Show HN: Pumpkin, un servidor moderno de Minecraft escrito en Rust
(github.com/Snowiiii)Pumpkin
Pumpkin es un servidor de Minecraft construido completamente en Rust, que ofrece una experiencia rápida, eficiente y personalizable. Prioriza el rendimiento y la diversión de los jugadores, al tiempo que respeta las mecánicas principales del juego.
Lo que Pumpkin busca lograr
- Rendimiento: aprovecha el multithreading para buscar la máxima velocidad y eficiencia
- Compatibilidad: soporta las versiones más recientes del servidor de Minecraft y respeta las mecánicas base del juego
- Seguridad: prioriza la seguridad al prevenir vulnerabilidades conocidas
- Flexibilidad: ofrece un alto nivel de configuración para desactivar funciones innecesarias
- Extensibilidad: proporciona una base para el desarrollo de plugins
Lo que Pumpkin no hará
- No se usará como reemplazo del servidor vanilla ni de otros servidores
- No será compatible con plugins o mods de otros servidores
- No funcionará como un framework para construir un servidor desde cero
Importante: Pumpkin se encuentra actualmente en desarrollo activo
Funcionalidades (en progreso)
- Configuración (toml)
- Estado del servidor/ping
- Inicio de sesión
- Configuración del jugador
- Registros (tipos de bioma, pinturas, dimensiones)
- Marca del servidor
- Enlaces del servidor
- Configuración del paquete de recursos
- Cookies
- Mundo
- Unirse al mundo
- Lista de jugadores en la pestaña
- Carga del mundo
- Generación de entidades
- Carga de chunks
- Generación del mundo
- Generación de chunks
- Límite del mundo
- Guardado del mundo
- Jugador
- Skin del jugador
- Marca del cliente del jugador
- Teletransporte del jugador
- Movimiento del jugador
- Animación del jugador
- Inventario del jugador
- Combate del jugador
- Servidor
- Plugins
- Query
- RCON
- Inventario
- Partículas
- Chat
- Comandos
- Proxy
- Velocity
El progreso actual puede consultarse en el proyecto de GitHub
Resumen de GN⁺
Pumpkin es un servidor de Minecraft desarrollado en Rust que destaca por su enfoque en el rendimiento y la experiencia del usuario. Sus características principales incluyen optimización de rendimiento mediante multithreading y mejoras de seguridad, además de ofrecer extensibilidad para el desarrollo de plugins. Puede ser útil para quienes estén interesados en el desarrollo de servidores de Minecraft, y como actualmente está en desarrollo activo, se esperan actualizaciones continuas. Proyectos con funciones similares incluyen PaperMC y Spigot.
1 comentarios
Comentarios de Hacker News
La diferencia de rendimiento en los benchmarks es impresionante. Sin embargo, faltan las funciones de generación y guardado del mundo, y esas son tareas costosas. En particular, la generación de chunks puede tumbar un VPS modesto. Me gustaría ver una comparación de rendimiento cuando esas funciones estén incluidas y en uso
Me pregunto si hay benchmarks de este proyecto. Quisiera saber cuánto más rápido es que un servidor vanilla
Como alguien que ya conocía este proyecto, me alegra ver que esté ganando popularidad en Hacker News. (Creo que 140 votos positivos está bastante bien)
Recientemente desarrollé Pumpkin, un servidor de Minecraft eficiente y rápido escrito completamente en Rust. Échenle un vistazo
Me pregunto si divide el hilo principal por regiones (por ejemplo, Paper Folia) o si separa las entidades no bloqueantes en sus propios hilos
Es un trabajo impresionante, pero me gustaría ver una implementación de alto rendimiento que soporte muchos mods de Minecraft. Los servidores Forge son famosos por ser lentos con modpacks grandes
Estoy esperando que Minecraft haya sido lo suficientemente bien invertido de su protocolo como para que funcionen varias implementaciones de servidor y cliente
Voy a probar este proyecto. El rendimiento del servidor vanilla puro es muy malo. Ojalá Mojang lo mejore. La generación de chunks nuevos al menos es multihilo. Me gustaría que hubiera soporte oficial para control básico de servidores SMP. Incluso permisos básicos (colocar, romper, interactuar) sobre regiones definidas por dos coordenadas de esquina serían suficientes. Las solicitudes/actualizaciones podrían administrarse con otras herramientas usando un archivo de configuración base. Podría operarse dentro del juego con una utilidad simple de línea de comandos. Sería bueno poder evitar usar siempre solo whitelist. Paper/Waterfall y otros tienen plugins, pero sería bueno mantener vanilla puro. He mantenido servidores durante mucho tiempo
Siempre me sorprende cómo la gente puede hacer este tipo de cosas. Agradecería un artículo sobre cómo se hizo este proyecto