Skip to content

Commit

Permalink
Merge 'master' into splash-potion and fix clippy
Browse files Browse the repository at this point in the history
  • Loading branch information
OfficialKris committed Feb 20, 2025
2 parents f020ecf + 3f1fd5a commit c1d2297
Show file tree
Hide file tree
Showing 459 changed files with 1,371,100 additions and 31,085 deletions.
21 changes: 21 additions & 0 deletions .github/workflows/typos.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: Spelling

permissions:
contents: read

on:
push:
pull_request:

env:
CLICOLOR: 1

jobs:
spelling:
name: Spell Check with Typos
runs-on: ubuntu-latest
steps:
- name: Checkout Actions Repository
uses: actions/checkout@v4
- name: Spell Check Repo
uses: crate-ci/[email protected]
16 changes: 11 additions & 5 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,15 +33,21 @@ The Documentation of Pumpkin can be found at <https://pumpkinmc.org/>

### Coding Guidelines

Things need to be done before this Pull Request can be merged. Your CI also checks most of them automaticly and fill fail if something is not fulfilled
Note: Pumpkin's clippy settings are relativly strict, this can be may frustrating but is necesarry so the code says clean and conssistent
Things need to be done before this Pull Request can be merged. Your CI also checks most of them automatically and fill fail if something is not fulfilled
Note: Pumpkin's clippy settings are relatively strict, this can be may frustrating but is necessary so the code says clean and consistent
**Basic**

- **Code Formatting:** Code must be well-formatted and follow the project's style guidelines. You can achieve this by running `cargo fmt`.
- **No Clippy Warnings:** Code should not produce any warnings from the Clippy linter. You can check for warnings using `cargo clippy --all-targets`.
- **Title:** Use a concise and informative title that clearly communicates the purpose of the PR. Anyone reviewing the PR should quickly understand the changes being proposed.
- **Description:** Provide a comprehensive description of the changes. Explain:
- What was changed?
- Why was this change necessary?
- What is the impact of this change?
- Are there any known issues or limitations?
- Include any relevant context, such as related issues or discussions.
- **No Clippy Warnings:** Address all warnings reported by the Clippy linter. You can check for warnings using `cargo clippy --all-targets`.
- **Passing Unit Tests:** All existing unit tests must pass successfully. You can run the tests with `cargo test`.

**Best Pratice**
**Best Practice**

- **Writing Unit Tests:** When adding new features or modifying existing code, consider adding unit tests to prevent regressions in the future. Refer to the Rust documentation for guidance on writing tests: https://doc.rust-lang.org/book/ch11-01-writing-tests.html
- **Benchmarking:** If your changes might impact performance, consider adding benchmarks to track performance regressions or improvements. We use the Criterion library for benchmarking. Refer to their Quick Start guide for more information: https://github.com/bheisler/criterion.rs#quickstart
Expand Down
17 changes: 10 additions & 7 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
[workspace]
resolver = "2"
members = [
"pumpkin-api-macros",
"pumpkin-config",
"pumpkin-util",
"pumpkin-inventory",
Expand Down Expand Up @@ -41,16 +42,18 @@ tokio = { version = "1.43", features = [
"signal",
] }

thiserror = "2"
thiserror = "2.0"

bytes = "1.9"
bytes = "1.10"

# Concurrency/Parallelism and Synchronization
rayon = "1.10.0"
parking_lot = { version = "0.12.3", features = ["send_guard"] }
crossbeam = "0.8.4"
rayon = "1.10"
parking_lot = { version = "0.12", features = ["send_guard"] }
crossbeam = "0.8"

uuid = { version = "1.12.1", features = ["serde", "v3", "v4"] }
derive_more = { version = "1.0.0", features = ["full"] }
uuid = { version = "1.13", features = ["serde", "v3", "v4"] }
derive_more = { version = "2.0", features = ["full"] }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"

async-trait = "0.1"
30 changes: 15 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,18 +14,14 @@ and customizable experience. It prioritizes performance and player enjoyment whi

![image](https://github.com/user-attachments/assets/7e2e865e-b150-4675-a2d5-b52f9900378e)

## What Pumpkin wants to achieve
## Goals

- **Performance**: Leveraging multi-threading for maximum speed and efficiency.
- **Compatibility**: Supports the latest Minecraft server version and adheres to vanilla game mechanics.
- **Security**: Prioritizes security by preventing known security exploits.
- **Flexibility**: Highly configurable, with the ability to disable unnecessary features.
- **Extensibility**: Provides a foundation for plugin development.

## What Pumpkin will not

- Be compatible with plugins or mods for other servers

> [!IMPORTANT]
> Pumpkin is currently under heavy development.
Expand All @@ -48,26 +44,29 @@ and customizable experience. It prioritizes performance and player enjoyment whi
- [x] World Loading
- [x] Lighting
- [x] Entity Spawning
- [x] Item drops
- [x] Bossbar
- [x] Chunk Loading
- [x] Chunk Loading (Vanilla, Linear)
- [x] Chunk Generation
- [x] Chunk Saving
- [x] Chunk Saving (Vanilla, Linear)
- [x] World Time
- [x] Scoreboard
- [x] World Borders
- [x] World Saving
- [ ] Redstone
- [ ] Liquid Physics
- Player
- [x] Player Skins
- [x] Player Client brand
- [x] Player Teleport
- [x] Player Movement
- [x] Player Animation
- [x] Player Inventory
- [x] Player Combat
- [x] Skins
- [x] Client brand
- [x] Teleport
- [x] Movement
- [x] Animation
- [x] Inventory
- [x] Combat
- [x] Experience
- [x] Hunger
- Entities
- [ ] Non-Living (Minecart, Eggs...)
- [x] Non-Living (Minecart, Eggs...)
- [x] Players
- [x] Mobs
- [x] Animals
Expand All @@ -82,6 +81,7 @@ and customizable experience. It prioritizes performance and player enjoyment whi
- [x] Chat
- [x] Commands
- [x] Permissions
- [x] Translations
- Proxy
- [x] Bungeecord
- [x] Velocity
Expand Down
35 changes: 34 additions & 1 deletion assets/attributes.json
Original file line number Diff line number Diff line change
@@ -1 +1,34 @@
{"armor":0.0,"armor_toughness":0.0,"attack_damage":2.0,"attack_knockback":0.0,"attack_speed":4.0,"block_break_speed":1.0,"block_interaction_range":4.5,"burning_time":1.0,"explosion_knockback_resistance":0.0,"entity_interaction_range":3.0,"fall_damage_multiplier":1.0,"flying_speed":0.4,"follow_range":32.0,"gravity":0.08,"jump_strength":0.41999998688697815,"knockback_resistance":0.0,"luck":0.0,"max_absorption":0.0,"max_health":20.0,"mining_efficiency":0.0,"movement_efficiency":0.0,"movement_speed":0.7,"oxygen_bonus":0.0,"safe_fall_distance":3.0,"scale":1.0,"sneaking_speed":0.3,"spawn_reinforcements":0.0,"step_height":0.6,"submerged_mining_speed":0.2,"sweeping_damage_ratio":0.0,"tempt_range":10.0,"water_movement_efficiency":0.0}
{
"armor": 0.0,
"armor_toughness": 0.0,
"attack_damage": 2.0,
"attack_knockback": 0.0,
"attack_speed": 4.0,
"block_break_speed": 1.0,
"block_interaction_range": 4.5,
"burning_time": 1.0,
"explosion_knockback_resistance": 0.0,
"entity_interaction_range": 3.0,
"fall_damage_multiplier": 1.0,
"flying_speed": 0.4,
"follow_range": 32.0,
"gravity": 0.08,
"jump_strength": 0.41999998688697815,
"knockback_resistance": 0.0,
"luck": 0.0,
"max_absorption": 0.0,
"max_health": 20.0,
"mining_efficiency": 0.0,
"movement_efficiency": 0.0,
"movement_speed": 0.7,
"oxygen_bonus": 0.0,
"safe_fall_distance": 3.0,
"scale": 1.0,
"sneaking_speed": 0.3,
"spawn_reinforcements": 0.0,
"step_height": 0.6,
"submerged_mining_speed": 0.2,
"sweeping_damage_ratio": 0.0,
"tempt_range": 10.0,
"water_movement_efficiency": 0.0
}
68 changes: 67 additions & 1 deletion assets/biome.json
Original file line number Diff line number Diff line change
@@ -1 +1,67 @@
["badlands","bamboo_jungle","basalt_deltas","beach","birch_forest","cherry_grove","cold_ocean","crimson_forest","dark_forest","deep_cold_ocean","deep_dark","deep_frozen_ocean","deep_lukewarm_ocean","deep_ocean","desert","dripstone_caves","end_barrens","end_highlands","end_midlands","eroded_badlands","flower_forest","forest","frozen_ocean","frozen_peaks","frozen_river","grove","ice_spikes","jagged_peaks","jungle","lukewarm_ocean","lush_caves","mangrove_swamp","meadow","mushroom_fields","nether_wastes","ocean","old_growth_birch_forest","old_growth_pine_taiga","old_growth_spruce_taiga","pale_garden","plains","river","savanna","savanna_plateau","small_end_islands","snowy_beach","snowy_plains","snowy_slopes","snowy_taiga","soul_sand_valley","sparse_jungle","stony_peaks","stony_shore","sunflower_plains","swamp","taiga","the_end","the_void","warm_ocean","warped_forest","windswept_forest","windswept_gravelly_hills","windswept_hills","windswept_savanna","wooded_badlands"]
[
"badlands",
"bamboo_jungle",
"basalt_deltas",
"beach",
"birch_forest",
"cherry_grove",
"cold_ocean",
"crimson_forest",
"dark_forest",
"deep_cold_ocean",
"deep_dark",
"deep_frozen_ocean",
"deep_lukewarm_ocean",
"deep_ocean",
"desert",
"dripstone_caves",
"end_barrens",
"end_highlands",
"end_midlands",
"eroded_badlands",
"flower_forest",
"forest",
"frozen_ocean",
"frozen_peaks",
"frozen_river",
"grove",
"ice_spikes",
"jagged_peaks",
"jungle",
"lukewarm_ocean",
"lush_caves",
"mangrove_swamp",
"meadow",
"mushroom_fields",
"nether_wastes",
"ocean",
"old_growth_birch_forest",
"old_growth_pine_taiga",
"old_growth_spruce_taiga",
"pale_garden",
"plains",
"river",
"savanna",
"savanna_plateau",
"small_end_islands",
"snowy_beach",
"snowy_plains",
"snowy_slopes",
"snowy_taiga",
"soul_sand_valley",
"sparse_jungle",
"stony_peaks",
"stony_shore",
"sunflower_plains",
"swamp",
"taiga",
"the_end",
"the_void",
"warm_ocean",
"warped_forest",
"windswept_forest",
"windswept_gravelly_hills",
"windswept_hills",
"windswept_savanna",
"wooded_badlands"
]
462,940 changes: 462,939 additions & 1 deletion assets/blocks.json

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions assets/chunk.json

Large diffs are not rendered by default.

15 changes: 14 additions & 1 deletion assets/chunk_status.json
Original file line number Diff line number Diff line change
@@ -1 +1,14 @@
["empty","structure_starts","structure_references","biomes","noise","surface","carvers","features","initialize_light","light","spawn","full"]
[
"empty",
"structure_starts",
"structure_references",
"biomes",
"noise",
"surface",
"carvers",
"features",
"initialize_light",
"light",
"spawn",
"full"
]
Loading

0 comments on commit c1d2297

Please sign in to comment.