Omar Afet f92f9f2ad7 Add /tick command (#932)
* Tick Command Implementation

* Send the current ticking state to the new player so they are in sync.

* extend `/tick query` command with performance tracking

* feat: enhance tick sprint reporting and message formatting

* Add suggestion hints for tick command arguments

* fix: update tick command permission level

* fix: resolve clippy pedantic warnings and refactor tick command

- Refactor oversized execute function in tick command into smaller helper methods:
  - handle_query() for query command logic
  - handle_non_sprinting_status() for status display
  - send_percentiles() for percentile calculations
  - handle_step_command() and handle_sprint_command() for respective operations
- Fix format string warnings by using inline format arguments ({tickrate:.1})
- Replace lossless casts (ticks as i64) with From::from() for type safety
- Use Self instead of explicit type name in tick_worlds method signature
- Add Default trait implementation for Ticker struct
- Ensure all match arms return proper Result types

Resolves all clippy::pedantic warnings including too_many_lines, uninlined_format_args, cast_lossless, and use_self violations.

* fix: replace hardcoded tick rate with configurable value from BASIC_CONFIG

* revert back the old comment
2025-06-24 11:30:26 +02:00
2025-06-22 23:28:59 +02:00
2025-06-17 19:53:33 +02:00
2025-02-20 18:42:20 +01:00
2025-06-24 11:30:26 +02:00
2025-06-22 21:28:14 +02:00
2025-06-22 23:28:59 +02:00
2025-05-10 15:22:06 +02:00
2025-06-24 11:30:26 +02:00
2025-06-22 23:28:59 +02:00
2025-06-23 22:46:25 +02:00
2025-03-29 13:25:37 +01:00
2025-05-10 12:46:42 +02:00
2025-06-08 11:59:48 +02:00
2025-06-22 23:28:59 +02:00
2025-06-17 19:53:33 +02:00
2024-08-02 12:33:51 +02:00
2025-05-10 12:46:42 +02:00
2025-02-06 18:08:56 +01:00
2025-06-24 08:17:27 +02:00
2025-05-10 12:46:42 +02:00
2025-01-01 13:05:17 +01:00
2025-06-17 19:53:33 +02:00
2024-12-04 11:37:41 +01:00
2025-05-10 12:46:42 +02:00

Pumpkin

CI Discord License: MIT Current version)

Pumpkin is a Minecraft server built entirely in Rust, offering a fast, efficient, and customizable experience. It prioritizes performance and player enjoyment while adhering to the core mechanics of the game.

gif

Goals

  • Performance: Leveraging multi-threading for maximum speed and efficiency.
  • Compatibility: Supports the latest Minecraft server version while adhering 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.

Important

Pumpkin is currently under heavy development

Features

  • Configuration (toml)
  • Server Status/Ping
  • Networking
    • Encryption
    • Packet Compression
  • Player Configuration
    • Registries (biome types, paintings, dimensions)
    • Server Brand
    • Server Links
    • Set Resource Pack
    • Cookies
  • World
    • World Joining
    • Player Tab-list
    • Scoreboard
    • World Loading
    • World Time
    • World Borders
    • World Saving
    • Lighting
    • Entity Spawning
    • Item drops (W.I.P)
    • Bossbar
    • TNT
    • Chunk Loading (Vanilla, Linear)
    • Chunk Generation
    • Chunk Saving (Vanilla, Linear)
    • Biomes
    • Redstone (W.I.P)
    • Liquid Physics
    • Vegetation
    • Structure Generation
  • Player
    • Skins
    • Client brand
    • Teleport
    • Movement
    • Animation
    • Inventory
    • Combat
    • Experience
    • Hunger
    • Off Hand
    • Advancements
    • Eating
  • Entities
    • Non-Living (Minecart, Eggs...) (W.I.P)
    • Entity Effects
    • Players
    • Mobs (W.I.P)
    • Animals (W.I.P)
    • Entity AI (W.I.P)
    • Entity Saving
    • Boss
    • Villagers
    • Mobs Inventory
  • Server
    • Plugins (W.I.P)
    • Query
    • RCON
    • Inventories
    • Particles
    • Chat
    • Commands (W.I.P)
    • Permissions
    • Translations
  • Proxy
    • Bungeecord
    • Velocity

Check out our Github Project to see current progress.

How to run

See our Quick Start guide to get Pumpkin running.

Contributions

Contributions are welcome! See CONTRIBUTING.md

Docs

Pumpkin's documentation can be found at https://pumpkinmc.org/

Communication

Consider joining our Discord server to stay up-to-date on events, updates, and connect with other members.

Funding

If you want to fund me and help the project, check out my GitHub sponsors.

Description
Languages
Rust 100%