promotional bannermobile promotional banner

Villager Refresh

A plugin to update villager trades that ignores the gamerule doDaylightCycle.

File Details

villager-refresh-1.3-1.19+.jar

  • R
  • Jun 4, 2026
  • 6.77 KB
  • 19
  • 1.21.11+23

File Name

villager-refresh-1.3-1.19+.jar

Supported Versions

  • 1.21.11
  • 1.21.10
  • 1.21.9
  • 1.21.8
  • 1.21.7
  • 1.21.6
  • 1.21.5
  • 1.21.4
  • 1.21.3
  • 1.21.2
  • 1.21.1
  • 1.21
  • 1.20.6
  • 1.20.5
  • 1.20.4
  • 1.20.3
  • 1.20.2
  • 1.20.1
  • 1.20
  • 1.19.4
  • 1.19.3
  • 1.19.2
  • 1.19.1
  • 1.19

Version 1.3 introduces significant improvements and bug fixes, now requiring Minecraft 1.19+ for full compatibility.

Key Changes

Architecture & Performance:

  • Removed event listener implementation, simplifying the plugin structure
  • Changed from task-based event handling to direct scheduler task management with explicit taskId tracking
  • Optimized villager iteration to use loaded chunks instead of all entities

Trade Refresh Logic:

  • Added check to skip villagers with no trades
  • Implemented proper recipe cloning with support for 1.19+ properties: villagerExperience and priceMultiplier
  • Added try-catch for demand/special price methods (version compatibility)
  • Only refresh trades that have actually been used

Command & Configuration:

  • Added interval validation to prevent invalid values
  • Added permission check in tab completion
  • Removed dependency on Objects.requireNonNull() for cleaner code

Bug Fixes:

  • Fixed task cancellation to properly track and cancel individual tasks
  • Improved error messaging for invalid command arguments