Registro de cambios
Notas de versión de las extensiones y plugins de BTC Studio.
Cada entrada indica la extensión, su versión, la fecha de publicación y los cambios realizados. Las entradas se añaden aquí a medida que se publican las versiones.
Próximamente
Estas extensiones están terminadas y esperan su publicación. Se listan aquí para que sepas lo que está en camino: todavía no se ha publicado ninguna release, y los números de versión siguientes son los que llevarán esas releases.
Corpse Extension v0.1 — primera release
- Los cadáveres se renderizan una vez por espectador, como los displays de entidad del propio motor, así que todos los que están cerca los ven; la animación del modelo y las placas de nombre funcionan en los backends BetterModel, BTC Mob NPC y MythicMobs NPC.
- Funciona en Folia: toda la planificación pasa por un planificador compatible con Folia, y los objetos soltados, las orbes de experiencia y las partículas se ejecutan en la región propietaria del cadáver.
- El inventario que guarda un cadáver sobrevive a un reinicio, un fallo o una recarga. Los cadáveres se almacenan en MySQL cuando está disponible, si no en la carpeta del plugin, y se restauran al arrancar.
onlyOwnerCanLootse aplica de verdad, y el saqueo se asocia al id de entidad del propio cadáver en lugar de a cualquier clic derecho en un radio de cuatro bloques.- La definición de cadáver se elige en cada muerte según el mundo y la prioridad, y su duración se resuelve una sola vez, sobre ese cadáver.
- Los eventos
on_corpse_spawn,on_corpse_lootyon_corpse_expirepasan por el pipeline de disparadores del motor y publican el propietario, el botín y la posición del cadáver como contexto. displayName,showDisplayName,dropOnInteract,renderArmor,playDeathAnimationydeathAnimationNamese respetan todos, y la mayoría de los ajustes son valores dinámicos, así que pueden gobernarse con placeholders y facts.- Un contorno luminoso renderizado en el cliente, con color configurable, y sonidos de cadáver enviados por jugador cercano en lugar de a todo el mundo.
- Los facts
has_corpseycorpse_count, la audienciacorpse_owner_audience,corpse_waypointque muestra distancia y dirección hacia el propio cadáver,corpse_recovery_objective, ycorpse_admin_commandcon los subcomandoslistyclear. - Una ventana de protección del botín, tras la cual el cadáver se abre a todo el mundo.
Custom Biome Extension v0.5
- Los biomas personalizados existen de inmediato. Una definición se registra en el registro vivo en cuanto se guarda, en lugar de esperar a un reinicio del servidor. El datapack generado pasa a ser la capa de persistencia en vez del único camino posible.
- Corregido: el servidor ignoraba el datapack generado, porque su formato de pack estaba fijado a un valor antiguo y se escribía en una carpeta que el servidor nunca lee.
- Corregido:
baseBiomeno tenía ningún efecto más allá de plains. Los biomas se construyen ahora a partir del bioma base que tiene el servidor y se codifican con su propio códec, de modo que las apariciones de criaturas, las features y los carvers se heredan en lugar de perderse. - Corregido: los cambios de bioma agujereaban el mundo. El refresco enviaba paquetes de descarga de chunk que el servidor nunca hacía seguir de un reenvío. Los clientes reciben ahora una actualización de bioma construida con los datos reales del chunk.
- Corregido:
leave_biome_eventno se disparaba nunca. Los listeners de entrada y de salida sobrescribían mutuamente su estado, así que el resultado dependía del orden de registro. - Corregido: el pintado escribía cada bloque de una columna en vez de uno por celda 4x4x4, y lo hacía desde el hilo llamante. Las escrituras se planifican ahora en la región propietaria de cada chunk.
- Un bioma que el servidor se negaría a serializar se rechaza ahora en el registro, nombrando el valor culpable. Antes se aceptaba y luego rompía todos los inicios de sesión.
- Superposiciones de bioma por jugador (
player_biome_overlay_action): mostrar un bioma distinto a un solo jugador, sin tocar el mundo ni afectar a nadie más. - Pintado de regiones (
paint_biome_region_action) con instantáneas, yrestore_biome_actionpara devolver una región a su estado anterior. biome_transition_cinematic: cambiar el bioma que ve un jugador a lo largo de una cinemática.custom_biome_preset: compartir colores y atributos visuales entre biomas, sobrescribibles por definición.explore_biome_objectiveybiome_discovery_fact: misiones que se completan visitando biomas.- Cada entrada de lectura gana una opción
source, que elige entre lo que se le muestra al jugador y lo que contiene el mundo. - Eliminados
/tw biome setcolor, que creaba biomas desechables nunca persistidos, y el modo de factHASH, cuyo valor no era estable entre reinicios. - El jar de la extensión baja de 2,6 MB a 230 KB: ya no empaqueta las bibliotecas que el servidor ya proporciona.
Enchantment Creator Extension v0.8
levelModeen una mecánica compararunOnLevelcomo nivel exacto, mínimo (AT_LEAST) o máximo (AT_MOST). Antes solo era posible la coincidencia exacta.eventPhaseejecuta las acciones de una mecánica durante el evento Bukkit en curso, de modo que cancelar el evento o cambiar el daño surte efecto de verdad. Ponlo en false para las interacciones de Typewriter en cola.clientSideEffectspasa a ser consciente del cliente, con una acciónclient_particle_effect: el artefacto BTC personalizado usa el renderizador basado en PacketEvents cuando está disponible, y el artefacto público de Paper un respaldo de Bukkit dirigido al jugador.- Las claves de registro se derivan ahora de
id. Elnameanterior se conserva como alias heredado al cargar páginas y objetos existentes, así que no hay que rehacer nada. - El artefacto público no tiene deliberadamente ninguna dependencia de BTC-CORE ni de BTC Velocity: funciona en Paper 1.21.x con Java 21, compilado desde JDK 25 con bytecode Java 21.
Numerical Storage Extension v0.9
transactionModeen la configuración de transacción:INTERNALmantiene la vía de PlaceholderAPI más comandos de consola,VAULTpasa directamente por la API Vault Economy e ignoraamountPlaceholdery los campos de comando.addCommandyremoveCommandestaban documentados al revés.addCommandcompleta un depósito hacia el almacenamiento y se comprueba antes de la mutación persistente;removeCommandcompleta una retirada.- La persistencia es ahora asíncrona, con bloqueos de mutación por artefacto y una caché de corta duración, así que dos depósitos simultáneos ya no pueden pisarse.
- Los archivos de almacenamiento pasan al esquema JSON versión 2, bajo una ruta de artefacto técnica.
Un archivo antiguo basado en el
artifactIdsemántico se respalda enbackups/numericalstorage/y se migra en el primer acceso: haz copia del directorioassets/de Typewriter antes de actualizar. artifactIdes un identificador técnico generado: déjalo vacío y Typewriter lo rellena.- Los placeholders reciben un argumento de definición explícito (
%typewriter_ns_balance_bank%), lo que elimina la antigua ambigüedad al dividir por guiones bajos cuando el ID de definición ya contiene alguno. - Claves sensibles al perfil, opcionales, cuando la integración Profiles está instalada.
2026-08-07
QuestCodex Extension v2.8
- Logros reales de Minecraft. La nueva entrada
advancement_definitionescribe logros auténticos en un paquete de datos que gestiona la propia extensión, de modo que aparecen en la pantalla de logros vanilla con su pestaña, su árbol, sus marcos y sus notificaciones.parentreferencia otra definición, así que el árbol se dibuja en el editor de nodos. grant_advancementconcede un logro o lo retira, y recorre la cadena de padres para que un hijo nunca se obtenga bajo un padre no obtenido.autoGrantconcede un logro en el primer tick del jugador. En una raíz, eso es lo que hace que su pestaña exista antes de haber obtenido nada.- Orden de misiones corregido: una misión anidada lee su orden de su propia subcategoría, las misiones sin orden explícito ya no se agrupan entre sí, y añadir una misión ya no borra el orden que tenía.
- Los marcadores de misiones están paginados, el modo de ordenación es por jugador, y el seguimiento múltiple sobrevive a una reconexión en el orden elegido.
OmniGUI Extension v0.11
- Descripciones emergentes de objetos, con un interruptor
hideVanillaItemStatsen la entrada de configuración de la GUI. - Un diseño paginado puede llevar un indicador de página, mediante el nuevo rol
INDICATOR. - Los menús se validan al arrancar el servidor: una casilla fuera de los límites, una plantilla ausente o un tipo de botón desconocido se indica en la consola antes de que un jugador abra el menú.
<shift:N>funciona sin CraftEngine, gracias a la fuente Magic Digit incluida.countyrepeatYestán documentados como contadores de repetición de casillas, no como tamaño de pila.
Shop Extension v1.3
- Una tienda ya no puede dejar a un jugador por debajo de cero. Tres caminos independientes lo permitían.
- Un saldo ilegible ya no se interpreta como cero, y los saldos con formato como
12.5kse leen correctamente.
2026-08-03
QuestCodex Extension v2.7
- Añadidos modos de visualización de waypoints:
WORLD_DIRECTIONALproyecta los marcadores sobre una esfera alrededor de los ojos del jugador siguiendo la dirección real del destino,TARGET_ANCHOREDlos coloca sobre el objetivo yADAPTIVEtransiciona entre ambos.HUD_LOCKEDsigue siendo el modo por defecto, así que las páginas existentes no cambian. - Añadido un tamaño aparente constante y un desagrupamiento angular, para que varios marcadores sigan siendo legibles cuando sus destinos comparten la línea de visión.
- Añadida la representación de múltiples objetivos en una sola entrada de waypoint, con las nuevas
selecciones de objetivos seguidos
ALLyONE_PER_QUEST, y un límitemaxTargets. - Corregido el seguimiento múltiple ignorado por los waypoints: los objetivos de las misiones seguidas secundarias nunca se resolvían, por lo que solo la misión principal generaba marcador.
- Añadido
quest_codex_locator_bar, que representa los mismos objetivos resueltos como puntos de la barra de localización vanilla en Minecraft 1.21.6+, sin generar ninguna entidad.
2026-08-02
QuestCodex Extension v2.6
- Añadida la recuperación persistente de diálogos y cinemáticas de Typewriter interrumpidos, incluido el último fotograma de la cinemática. La recuperación conserva ahora la instantánea capturada cuando Typewriter emite sus eventos de cierre tras la desconexión de un jugador.
- Añadido el seguimiento persistente de varias misiones, con menú de misiones seguidas, placeholders dedicados y un ejemplo público de waypoint con dos misiones.
- Añadidos waypoints del lado del cliente solo de texto, con texto de icono configurable, bloques display centrados, rotación de beacon centrada, alineación de objetivo por nivel, interpolación suave, colocación cerca del objetivo y cono de visibilidad horizontal configurable.
- Eliminadas las capas antiguas de waypoint (item display y flecha direccional) antes de su primer despliegue público.
OmniGUI Extension v0.10
- Añadidos los motores de disposición Flex y Composite, para una colocación de slots adaptable y capas de menú compuestas.
- Añadidas vistas direccionables reutilizables, con pools de disposición heredados, vistas por defecto, migas de pan, etiquetas de vista e integración opcional con el historial.
- Añadida la migración de esquema consciente de las vistas y la integración con QuestCodex, además de los metadatos de publicación en Maven.
- Corregidos los cambios de vista, que ahora reconstruyen los menús sin parpadeo de cierre y reapertura; el cierre de inventario es ahora compatible con Folia.
Shop Extension v1.2
- Reconstruida y validada la extensión Shop pública frente a OmniGUI v0.10.
- Conservadas las disposiciones dinámicas de tienda existentes, el historial de navegación, la gestión de rellenos, las reglas de stock y límite, y los manejadores de botones personalizados.
- No se requiere migración desde Shop Extension v1.1.
MythicMobsNPC Extension v0.4.6
- Corregido un cambio de escala ignorado en modelos que no incluyen ninguna animación, igual que en la extensión BetterModel.
- Las variantes de mobs vanilla (gato, zorro, lobo, aldeano y similares) se informan ahora una vez en la consola en lugar de ignorarse en silencio: pertenecen a la configuración de MythicMobs, que posee la identidad del mob y las sobrescribiría en cada reaparición.
- Corregido que una entrada de datos fallida cancelara todas las demás enviadas en el mismo lote, lo que podía dejar a un NPC sin ninguno de sus datos configurados.
- El efecto de brillo y el equipamiento se aplican ahora sobre el modelo, no solo sobre el mob. El cuerpo del mob está oculto tras el modelo, así que aplicarlos solo al mob no mostraba nada.
- El equipamiento informa ahora en la consola cuando el modelo no tiene ningún hueso portador de objetos, en lugar de no hacer nada en silencio.
- El fuego se reafirma cada segundo para que no se apague por sí solo, e indica cuándo BetterModel está ocultando el cuerpo sobre el que se dibujan las llamas.
- Corregidas las sacudidas de la placa de nombre cuando el NPC camina o sigue una red de caminos: el texto mostrado interpola ahora entre actualizaciones en lugar de teletransportarse a saltos.
BetterModel Extension v1.3
- Corregida la escala del modelo ignorada en modelos que no incluyen ninguna animación. BetterModel solo recalcula la transformación de un modelo mientras se está ejecutando una animación, por lo que un cambio de escala aplicado en tiempo de ejecución nunca llegaba a un modelo estático. La extensión fuerza ahora el recálculo por su cuenta.
- La misma corrección se aplica al desplazamiento del modelo, que pasaba por la misma ruta de código.
- Las entradas de datos de entidad llegan ahora realmente al modelo en lugar de descartarse. Compatibles: efecto de brillo, color de efecto de poción (representado como tinte de objeto), brillo de luz, restricción de cartel, duración de interpolación, traslación, escala 3D, tamaño de caja, equipamiento y fuego.
- Añadido
bettermodel_bone_appearance, una versión por hueso de los ajustes de brillo, tinte, destello y luminosidad, con el mismo sistema de criterios quebettermodel_bone_visibility. - El equipamiento se asigna a los huesos de objeto de mano y cabeza de BetterModel. Las ranuras de armadura se informan una vez en la consola en lugar de ignorarse en silencio, porque el torso y las piernas de un modelo contienen su propia geometría.
- Una escala 3D no uniforme emite ahora una advertencia en lugar de usar en silencio un solo eje: BetterModel solo admite escala uniforme.
- Cualquier entrada de datos sin sentido en un modelo 3D (posturas, variantes de mobs, estado de cría…) se informa ahora una vez en la consola en lugar de descartarse en silencio.
- Brillo, tinte, luminosidad, cartel, traslación y equipamiento sobreviven ahora a una recarga del paquete de recursos o a una reaparición, en lugar de volver al aspecto por defecto del modelo.
- El equipamiento informa en la consola cuando el modelo no tiene ningún hueso etiquetado
ri,lioph, en lugar de no hacer nada en silencio: esa es la razón habitual de que un objeto no aparezca. - El fuego se dibuja ahora en la entidad de interacción del NPC en lugar de en los huesos del modelo: el cliente escala la llama según la caja delimitadora de la entidad, y una entidad de display no tiene ninguna, por lo que las llamas se dibujaban con tamaño cero.
Nexo Extension v1.0
- Añadidos hechos para saber qué sostiene el jugador, qué lleva en su inventario, qué mira o sobre qué está de pie.
- Añadidas variables que dan el ID y las propiedades del objeto, bloque y mueble apuntados.
- Añadidas una acción para dar y otra para retirar un objeto, ambas basadas en el ID de objeto de Nexo.
- Añadidos eventos de recogida, soltado y consumo de objetos.
- Añadidos eventos de interacción y daño para bloques y muebles personalizados, además de un evento de botín.
- Los eventos transmiten ahora sus datos (ID de bloque, posición, objeto en mano) a lo que se ejecute a continuación, de modo que un diálogo o una acción puede usarlos directamente.
CraftEngine Extension v1.0
- Los objetivos de misión funcionan. Pueden adjuntarse a una misión, guardan su progreso y pueden disparar una secuencia al completarse.
- Añadidos hechos para tiempos de reutilización, para objetos sostenidos y transportados, y para el bloque o mueble al que apunta el jugador.
- Añadidas variables que dan los ID, las propiedades de objeto y la lista de contenido cargado.
- Añadidas una acción para dar y otra para retirar un objeto, ambas basadas en el ID de objeto de CraftEngine.
- Añadidos eventos de recogida, soltado y consumo de objetos.
- Añadidos eventos para intentos de colocación y para golpear muebles.
- Los eventos transmiten ahora sus datos a lo que se ejecute a continuación.
ItemsAdder Extension v1.0
- Los eventos de bloque y mueble leen ahora ItemsAdder directamente en lugar de deducirlos de los eventos vanilla, lo que los hace fiables y elimina un breve retardo que podía perder o repetir un disparo.
- Añadidos hechos para objetos sostenidos y transportados, usos restantes, durabilidad personalizada, visibilidad del HUD y crecimiento de cultivos.
- Añadidas variables que dan los ID, las propiedades de objeto y las imágenes de fuente.
- Añadidas una acción para dar y otra para retirar un objeto, ambas basadas en el ID de objeto de ItemsAdder.
- Añadidos eventos de recogida, soltado y consumo de objetos.
- Añadidos eventos de interaccción, un evento previo a la colocación de muebles y un evento de muerte de entidad personalizada.
- Los eventos transmiten ahora sus datos a lo que se ejecute a continuación.
- Corregidos los objetivos de misión, igual que en la extensión Nexo.
2026-07-26
QuestCodex Extension v2.5
- Añadido el seguimiento persistente de varias misiones mediante la entrada
quest_codex_tracking_artifact. - Añadido el modo de menú de categoría
@trackedy los marcadores dinámicosTRACKED_QUEST_SLOT. - Añadidos
/tw codex trackedy el comando GUI internocodex:tracked. - Añadidos placeholders de PlaceholderAPI para el número de misiones seguidas, el límite, la misión principal, las misiones seguidas indexadas, los estados, los objetivos y las prioridades.
- Documentada la estructura del paquete de páginas públicas: manifiesto principal, artefacto de seguimiento estático, definiciones de misiones y ajustes de la GUI.
OmniGUI Extension v0.9
- Añadida la migración automática del esquema de páginas públicas para el almacenamiento en línea y los campos de paginación antiguos.
- Documentado el esquema compacto
storagePool/storageIdynavigationButtons, usado para reducir los bloqueos de publicación en el editor de Typewriter. - Aclarado el patrón recomendado de menú referenciado para menús grandes de QuestCodex.