QuantumHy
In DevelopmentHytale • Version 0.2.1
QuantumHy hace que tu cliente vaya más fluido en Hytale recortando cuánto le dice el servidor que dibuje, y lo ajusta por jugador según dónde estés. En campo abierto mantienes tu visión completa; en un sitio lleno y costoso recoge las cosas para que tus FPS no se caigan.
El cliente de Hytale es nativo, así que ningún mod toca el renderizador. Lo que un mod de servidor sí puede hacer es decidir cuánto tiene que renderizar cada cliente, y ese es todo el truco: menos chunks y entidades a la vista significan menos cosas que dibujar, lo que significa más frames.
Dos límites honestos. Solo ayuda donde está instalado (tu mundo en solitario, tu propio servidor, o un servidor que lo use), no en un servidor al que solo te conectas. Y nunca empuja tu visión más allá de lo que pediste: tu propio radio de visión es el tope, QuantumHy solo lo baja.
Rendimiento
Captura de frametime en Hytale Client. Mismo PC de prueba en todas las runs.
PC de prueba
| Componente | Spec |
|---|---|
| CPU | AMD Ryzen 5 3600 |
| GPU | NVIDIA GeForce GTX 1650 4GB |
| RAM | 16 GB (2×8 GB) |
Ruta de estrés
Mundo en solitario, misma ruta de estrés (aves y mobs en pantalla). Mod off vs QuantumHy por defecto (~205s off, ~233s on).
| Métrica | Off | On | Cambio |
|---|---|---|---|
| FPS medio | 102 | 146 | +43% |
| P5 | 51,6 | 91,1 | +76% |
| P1 | 36,2 | 64,4 | +78% |
| Media 1% low | 14,0 | 19,8 | +41% |
| Tiempo bajo 60 FPS | 25,3% | 6,9% | −73% de ese tiempo |
Haz clic en un gráfico para abrirlo a tamaño completo.
Ruta de estrés — mod off
Ruta de estrés — mod on
Ruta de estrés — mod off
Ruta de estrés — mod on
Juego normal (0.2.1)
Mundo en solitario, sesión normal (~5 min cada una). Sin ruta de estrés forzada, solo jugando. Mod off vs QuantumHy 0.2.1 por defecto.
| Métrica | Off | On | Cambio |
|---|---|---|---|
| FPS medio | 159,6 | 226,9 | +42% |
| P5 | 111,1 | 178,1 | +60% |
| P1 | 77,2 | 139,1 | +80% |
| Media 1% low | 43,7 | 111,7 | +155% |
| Tiempo bajo 60 FPS | 2,2% | 0,1% | −95% de ese tiempo |
Cómo funciona
Cada pocos segundos QuantumHy cuenta las entidades en los chunks alrededor de cada jugador como medida del coste de render, suaviza esa señal y la convierte en un único factor de reducción. Ese factor mueve dos palancas a la vez:
- El radio de visión en chunks, para dejar de transmitir terreno lejano cuando hay movimiento.
- El radio de stream de entidades en bloques, para que el servidor deje de enviar mobs lejanos. Esto es independiente de los chunks y es de donde viene la mayor parte de la ganancia cuando miras a una multitud.
En campo abierto ambos vuelven a subir al punto inicial. Mientras todavía estás cargando chunks (acabas de entrar, o vas corriendo), los recortes se retienen para que no se le diga al cliente que descarte chunks que está ocupado cargando.
Funciones
- Radio de visión en chunks adaptativo guiado por la densidad local de entidades, limitado a tu propio radio
- Radio de stream de entidades adaptativo en bloques, la gran palanca en zonas llenas de mobs
- Culling global por LOD de entidades que descarta entidades pequeñas y lejanas antes
- Suavizado de densidad para que la visión de quien se mueve no oscile
- Toma de control automática de LeanCore para que los dos mods nunca peleen por el radio de visión
- Registro detallado en el servidor que explica cada decisión por jugador en cada pasada
Instalación
- Descarga QuantumHy-0.2.1.jar desde la pestaña Files de CurseForge
- Coloca el JAR en la carpeta mods/ de tu servidor (o
%AppData%\Hytale\UserData\Mods\en Windows) - Inicia el servidor. La config se crea como QuantumHy.json en la carpeta de datos del plugin
Config
No hay comandos. Todo vive en QuantumHy.json, creado en el primer arranque. Los valores por defecto funcionan de entrada: sin tope fijo de visión, adapta solo cuando hay aglomeración. Pon targetClientViewRadius por encima de 0 para cambiar distancia de visión por FPS en todas partes. Referencia completa de claves: documentación.
Usándolo con LeanCore
Si también ejecutas LeanCore, QuantumHy resuelve el solapamiento por ti. Ambos pueden ajustar el radio de visión del cliente y solo uno debe hacerlo, así que QuantumHy lo toma: al arrancar detecta LeanCore, apaga la gobernanza de radio de visión de LeanCore y pasa a controlar el radio él mismo. LeanCore sigue con todo lo demás (radio de simulación, throughput de chunks, memoria). No hace falta tocar la config de LeanCore. Pon leanCoreTakeover en false para dejar a LeanCore en paz, o yieldToLeanCoreViewRadius en true para que LeanCore conserve el radio de visión.
Recomendado
- En solitario o tu propio servidor: deja los valores por defecto. Solo pierdes distancia de visión cuando hay aglomeración real.
- Quieres FPS en todas partes: pon
targetClientViewRadiusentre 12 y 16 para limitar la distancia de visión incluso en campo abierto. - Observa el registro una pasada o dos para ver la densidad y las decisiones de visión, luego pon
verboseLogen false.
Licencia
Licencia MIT
For server owners
Need permissions, commands & config?
The full administration guide covers every permission node, admin command, LuckPerms examples, and all config options.
Read server documentation