chronomissions-fabric-3.9.2.jar
Curse Maven Snippet
What's new
ChronoMissions v3.9.2
⚙️ Timezone Integration & Reset Synchronization
- Added Local Timezone Support: Added a new
timezoneIdparameter toconfig.toml(defaults to your server's system time). - Decoupled UTC Constraints: Fixed a critical bug where players' daily progress and acceptance states (
acceptedToday) would reset prematurely at 00:00 UTC (e.g., 8:00 PM/9:00 PM in Chile/UTC-4 regions) instead of the configured server reset hour. - Smart Streak Calculations: Daily streaks and "yesterday" completion verifications are now calculated using the configured timezone instead of static UTC, protecting active player streaks from timezone-shift failures.
- Backward Compatibility: Kept config properties
resetHourUtcandresetMinuteUtcintact within the TOML structure to preserve existing configurations while mapping them seamlessly to local time logic. - Global Timezone Migration: Fully refactored time tracking from strict UTC-only calculations to the custom timezone configured in
ConfigLoader(e.g., CDMX), resolving the timezone discrepancy issue. - NpcInteractHandler: Updated
MissionManager.getTodayMissionUtc()toMissionManager.getTodayMission(). Cleaned up the error message by removing the "(UTC)" indicator when no missions are available. - TravelProgressHandler: Updated travel requirement checks to use
MissionManager.getTodayMission(), ensuring that player movement, coordinates, and distances are processed according to the local calendar day. - MissionsCommand:
- Swapped out all instances of
getTodayMissionUtc()forgetTodayMission()across/missions show,/missions complete,/missions fail, and/missions reset. - Simplified the output of
/missions statusby changing"Día UTC"and"Mes UTC"labels to"Día"and"Mes".
- Swapped out all instances of
- ChronoMissionsFabric (Main Class): Fixed the initialization log to print the local/config reset time using
getNextResetInstant()instead ofgetNextResetInstantUtc().
ChronoMissions v3.9.2
⚙️ Soporte de Zonas Horarias y Sincronización de Reinicios
- Soporte para Zona Horaria Local: Se añadió el parámetro configurable
timezoneIdal archivoconfig.toml(el cual utiliza la hora del sistema del servidor por defecto). - Corrección de Desfase de Horas (UTC): Se solucionó un error crítico que provocaba que el progreso diario y la aceptación de misiones (
acceptedToday) se reiniciaran antes de tiempo a las 00:00 UTC (las 8:00 PM / 9:00 PM en Chile/regiones UTC-4) en lugar de la hora local configurada. - Cálculo de Rachas Inteligente: La verificación de racha diaria y el estado del "día anterior" ahora se calculan en base a la zona horaria del archivo de configuración, evitando que los jugadores pierdan sus rachas debido a cambios de huso horario.
- Compatibilidad Retroactiva: Se mantuvieron los nombres
resetHourUtcyresetMinuteUtcen el archivo TOML para no romper ni borrar las configuraciones previas de los servidores existentes. - Migración Global de Zona Horaria: Se refactorizó por completo el cálculo de tiempo, pasando de UTC puro al huso horario personalizado configurado en
ConfigLoader(ej. CDMX), solucionando definitivamente el desfase horario. - NpcInteractHandler: Se actualizó
MissionManager.getTodayMissionUtc()aMissionManager.getTodayMission(). Se limpió el mensaje de error en el chat eliminando la etiqueta "(UTC)" cuando no hay misiones disponibles. - TravelProgressHandler: Se actualizaron las verificaciones de viaje para usar
MissionManager.getTodayMission(), asegurando que el movimiento, coordenadas y distancias de los jugadores se procesen bajo el día calendario local. - MissionsCommand:
- Se reemplazaron todas las instancias de
getTodayMissionUtc()porgetTodayMission()en los subcomandos/missions show,/missions complete,/missions faily/missions reset. - Se simplificó la interfaz del comando
/missions statuscambiando los textos de"Día UTC"y"Mes UTC"a simplemente"Día"y"Mes".
- Se reemplazaron todas las instancias de
- ChronoMissionsFabric (Clase Principal): Se corrigió el log de inicialización en consola para que imprima el próximo reinicio local usando
getNextResetInstant()en lugar degetNextResetInstantUtc().
All Relations
- All Relations
- Embedded Library
- Optional Dependency
- Required Dependency
- Tool
- Incompatible
- Include
This mod has no related projects

