COWMODSКаталог модов

TimerCommand

A comprehensive command scheduler for Spigot/Paper servers

Автор: kulihrasek11016912обновлён 30 окт. 2026 г.
ОптимизацияТехнологииУтилиты

Описание

logo

TimerCommand

A comprehensive command scheduler for Spigot/Paper servers


✨ Features

  • ⏰ TIME Commands – Execute commands daily at a specific time
  • INTERVAL Commands – Execute commands repeatedly at fixed intervals
  • MONTHLY_DAY Commands – Execute commands on specific days of the month
  • WEEKLY Commands – Execute commands on specific days of the week NEW
  • GAME_TIME Commands – Execute commands based on in-game time in worlds NEW
  • Multiple Commands – Execute multiple commands in sequence NEW
  • Timezone Support – Full timezone support with global settings
  • PlaceholderAPI Integration – Use dynamic placeholders in commands
  • Dynamic Placeholders – %day%, %month%, %year%, %hour%, %minute%
  • GUI Menu – Simple in-game command management
  • Command Logging – Full logging of all actions
  • ⚙️ Hot Reload – Reload configuration without restarting
  • Multi-language Support – CZ/EN/DE/ES/RU/JA + Customizable

SUPPORT

For support or feature suggestions, contact me:

bStats


Галерея

LogoTimerCommand menu

Последние версии

Все версии →
release

TimerCommand 1.2.0

1.2.0
30 окт. 2026 г.2Minecraft: 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2, 26.3bukkit, paper, purpur, spigot
Скачать
Что нового
# 1.2.0 - Gift Creation Overhaul This release makes gift creation clearer and safer, adds gift design templates and a summary screen, and fixes gift opening and item handling. ## Highlights - **Summary screen before creation** - after clicking Create Gift you now see a preview of the gift, the recipient, slot count, item count, price and balance. Use **Back** to return to the contents, **Cancel** to abort, or **Create Gift** to finish. Money is charged only after confirmation. - **Gift design templates** - save the gift appearance, name and lore as a reusable design. Templates never store items. Load a design from the appearance or contents screen; loading returns any current contents to your inventory and takes you to slot selection, so item duplication is impossible. Shift-click a template to delete it. - **Clearer five-step flow** - step numbers (1/5 … 5/5) in titles, a **Cancel** button on every step, a cleaner slot-selection layout, and shorter chat hints. - **Sound feedback** - configurable click and error sounds for menu navigation, forbidden items and missing money. - **Back button in the contents GUI** - the old “Return items” hopper is now a **Back** button that returns the items and goes to slot selection. ## Fixes - **Gifts can be opened again** - interacting with a gift now works even when another plugin or the server marks the interact event as cancelled. Right-clicking in air and right-clicking blocks both work, including gifts made of coal, bricks or name tags. - **No item loss** - forbidden items cannot be inserted. If one gets into the GUI anyway, it is returned on confirm. Closing the GUI, quitting and plugin shutdown return all contents. - **Stackable gifts** - with `gift-lock.mode: "none"`, identical gifts (same contents, recipient, creator, name, lore and appearance) stack. Lock modes `minutes` and `scheduled` still store a creation timestamp, so they do not stack. - **Recipient tracking** - new gifts store the recipient UUID and name. Only the recipient, creator, admins or players with `playerpresents.open.any` can open them. Old gifts without recipient data remain open to everyone. - **Safer economy** - the price is charged only after all validation and creation succeeded; items are returned if anything fails. - **Lock timezone fix** - creation time is stored as epoch milliseconds, so minute and scheduled locks work correctly with the configured timezone. - **Safer opening** - empty gifts do not open, full inventories follow `inventory-full-action`, and the gift is removed only after its contents are delivered. - **Language and config fixes** - missing translations fall back to English, new keys are added to existing language files, messages are formatted once, and config is loaded in the correct order. - **Gift data** - new version-stable serialization of gift contents with support for gifts created by older versions. ## New configuration ```yml recipient-only: true allow-offline-recipients: true templates: enabled: true max-per-player: 9 effects: ui-click-sound: "UI_BUTTON_CLICK" ui-error-sound: "ENTITY_VILLAGER_NO" ``` Existing configs keep their values; new optional keys use built-in defaults. ## Upgrade notes - Back up `plugins/PlayerPresents/` before updating. - Existing gifts remain readable. Old gifts without recipient data are open to everyone. - Set `language: "cs"` for Czech, or another supported language. - If you want the old “anyone can open” behaviour, set `recipient-only: false`. ## Compatibility Requires Paper/Spigot 1.17+. Tested on Paper 26.2 and Leaf 1.21.11.
release

TimerCommand 1.0.6

1.0.6
15 мая 2026 г.347Minecraft: 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2bukkit, paper, purpur, spigot
Скачать
Что нового
✅ Added support for multiple execution times in TIME scheduled commands, allowing one command to run at several times during the day. ✅ Implemented backward-compatible time parsing for both single values ("HH:mm" / "HH:mm:ss") and YAML lists. ✅ Updated command info/list and GUI display to show all configured times for TIME commands. ✅ Improved daily trigger tracking so each configured time executes once per day reliably. ``` daily-announce: enabled: true type: "TIME" time: - "11:00" - "23:00" command: "say Right now is %hour%:%minute%!" description: "Daily announcement" ```
release

TimerCommand 1.0.5

1.0.5
22 дек. 2025 г.245Minecraft: 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bukkit, paper, purpur, spigot
Скачать
Что нового
✅ Added full version compatibility support from **Minecraft 1.17 up to the latest release**, ensuring seamless operation across all modern server versions. ✅ Implemented cross-version handling for internal API changes to maintain consistent behavior and stability. ✅ Ensured all existing features, commands, and placeholders work identically on every supported version without limitations. ✅ Improved long-term maintainability by future-proofing the plugin against upcoming Minecraft updates. ✅ Verified performance and reliability across the entire supported version range for production environments.
release

TimerCommand 1.0.4

1.0.4
21 дек. 2025 г.29Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bukkit, paper, purpur, spigot
Скачать
Что нового
✅ Added `$delay$` placeholder feature for delayed command execution across all command types (TIME, INTERVAL, WEEKLY, MONTHLY_DAY, GAME_TIME). ✅ Implemented cumulative delay system where multiple `$delay$` commands execute sequentially with customizable delay intervals. ✅ Commands without `$delay$` before delayed commands execute immediately, while those after delayed commands execute after all delays complete. ✅ Added comprehensive delay support with delay value specified in seconds via the `delay` configuration field. ✅ Delay feature works seamlessly with all existing placeholder replacements (%day%, %month%, %year%, %hour%, %minute%, PlaceholderAPI, etc.). ✅ Enhanced configuration flexibility with delay parameter available for all command types without any restrictions. ✅ Added detailed logging for delayed command scheduling and execution with timing information. --- ## Example Configuration Here's a practical example of using the new delay feature for a server restart countdown: ```yaml restart-countdown: enabled: true # Set to true to enable type: "TIME" commands: - "say Restart in 10 seconds" - "$delay$ say Restart in 9 seconds" - "$delay$ say Restart in 8 seconds" - "$delay$ say Restart in 7 seconds" - "$delay$ say Restart in 6 seconds" - "$delay$ say Restart in 5 seconds" - "$delay$ say Restart in 4 seconds" - "$delay$ say Restart in 3 seconds" - "$delay$ say Restart in 2 seconds" - "$delay$ say Restart in 1 second" - "$delay$ say Restarting server now!" - "$delay$ restart" # Restart command will execute after all delays time: "23:59" # Execute at 23:59 every day delay: "1" # 1 second delay between each command ```
release

TimerCommand 1.0.3

1.0.3
13 дек. 2025 г.37Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bukkit, paper, purpur, spigot
Скачать
Что нового
# New Features in TimerCommand Plugin ## Overview Three major new features have been added to the TimerCommand plugin: 1. **WEEKLY type** - Commands on specific days of the week 2. **Multiple Commands Support** - Execute multiple commands for one scheduler 3. **GAME_TIME type** - Commands based on in-game time in a world --- ## 1. WEEKLY Type - Commands on Specific Days of the Week ### Description Allows you to run a command on specific days of the week at a determined time (e.g., every Friday at 22:59). ### Configuration ```yaml weekly-example: enabled: true type: "WEEKLY" command: "say This command runs every Monday, Wednesday and Friday at 12:00!" time: "12:00" # Format: HH:mm or HH:mm:ss days: - "monday" - "wednesday" - "friday" ``` ### Command Format ``` /tc add WEEKLY <command_name> <day_1-7> <HH:MM:SS> <command> ``` **Day Numbers:** - `1` = Monday - `2` = Tuesday - `3` = Wednesday - `4` = Thursday - `5` = Friday - `6` = Saturday - `7` = Sunday ### Supported Days in config.yml - `monday` (MON) - `tuesday` (TUE) - `wednesday` (WED) - `thursday` (THU) - `friday` (FRI) - `saturday` (SAT) - `sunday` (SUN) Days are case-insensitive - all of these work: - `"monday"`, `"MONDAY"`, `"Monday"` - `"mon"`, `"MON"`, `"Mon"` ### Examples **Example 1: Command every Tuesday at 15:30** ```yaml tuesday-event: enabled: true type: "WEEKLY" command: "say Tuesday event!" time: "15:30" days: - "tuesday" ``` **Command line:** `/tc add WEEKLY tuesday_event 2 15:30 say Tuesday event!` **Example 2: Commands on weekdays at 09:00** ```yaml weekday-morning: enabled: true type: "WEEKLY" commands: - "say Good morning!" - "broadcast Server is ready" time: "09:00" days: - "monday" - "tuesday" - "wednesday" - "thursday" - "friday" ``` **Command line:** `/tc add WEEKLY weekday_morning 1 09:00 say Good morning!` Then manually add days to config.yml. --- ## 2. Multiple Commands Support ### Description Instead of running a single command, you can now specify a list of commands that will be executed in sequence. ### Configuration **Old way (still works):** ```yaml single-command: enabled: true type: "TIME" command: "say Single command" time: "12:00" ``` **New way (list):** ```yaml multiple-commands: enabled: true type: "TIME" commands: - "say First command" - "give @a diamond 1" - "broadcast Server announcement" time: "12:00" ``` ### Notes - When using the `commands` array, the `command` field is ignored - Commands execute in the order specified in the configuration - This feature works with **ALL** scheduler types (TIME, INTERVAL, MONTHLY_DAY, WEEKLY, GAME_TIME) ### Examples **Example 1: Daily cleanup with multiple commands** ```yaml daily-cleanup: enabled: true type: "TIME" commands: - "say Starting server cleanup!" - "save-all" - "broadcast Server will restart in 10 seconds" time: "06:00" ``` **Example 2: Weekly bonus on Friday with multiple commands** ```yaml weekly-bonus: enabled: true type: "WEEKLY" commands: - "broadcast Friday bonus!" - "give @a gold_ingot 10" - "effect give @a speed 3600 1" time: "19:00" days: - "friday" ``` --- ## 3. GAME_TIME Type - Commands Based on In-Game Time ### Description Allows you to run a command at a specific in-game time (measured in ticks) in a specific world (e.g., when the sun reaches noon). In-game time is measured in ticks (0-24000 per day): - **0 ticks** = Sunrise (start of day) - **6000 ticks** = Noon (sun at highest point) - **12000 ticks** = Sunset (afternoon/evening) - **18000 ticks** = Midnight (darkest, start of night) ### Configuration ```yaml game-time-example: enabled: true type: "GAME_TIME" command: "say It's noon in-game!" world: "world" # World name tick: 6000 # In-game tick (0-24000) ``` ### Command Format ``` /tc add GAME_TIME <command_name> <world_name> <tick_0-24000> <command> ``` ### Important Information - The command runs **only once per day** at the specified tick - The command runs **only in the specified world** - You must specify an existing world name (e.g., "world", "world_nether", "custom_world") - In-game time depends on the `doDaylightCycle` gamerule - if it's off, the command may not trigger ### Examples **Example 1: Noon announcement** ```yaml noon-event: enabled: true type: "GAME_TIME" command: "say The sun has reached its peak!" world: "world" tick: 6000 ``` **Command line:** `/tc add GAME_TIME noon_event world 6000 say The sun has reached its peak!` **Example 2: Midnight effect with multiple commands** ```yaml midnight-event: enabled: true type: "GAME_TIME" commands: - "say Midnight in-game!" - "effect give @a blindness 10" - "broadcast The night is darkest!" world: "world" tick: 18000 ``` **Command line:** `/tc add GAME_TIME midnight_event world 18000 say Midnight in-game!` **Example 3: Multiple world events during the day** ```yaml sunrise: enabled: true type: "GAME_TIME" command: "effect give @a speed 300 1" world: "world" tick: 0 sunset: enabled: true type: "GAME_TIME" commands: - "say The sun is setting" - "effect give @a slowness 300 1" world: "world" tick: 12000 ``` --- ## Combined Examples ### WEEKLY + Multiple Commands ```yaml weekly-with-multiple: enabled: true type: "WEEKLY" commands: - "say Friday is here!" - "give @a diamond 5" - "effect give @a haste 1800 2" - "broadcast Weekend event starts!" time: "19:00" days: - "friday" ``` **Command line:** `/tc add WEEKLY friday_event 5 19:00 say Friday is here!` ### GAME_TIME + Multiple Commands in Different Worlds ```yaml world-noon: enabled: true type: "GAME_TIME" commands: - "execute in world run effect give @a speed 600 1" - "broadcast It's noon in the main world!" world: "world" tick: 6000 nether-midnight: enabled: true type: "GAME_TIME" command: "say It's midnight in the Nether" world: "world_nether" tick: 18000 ``` --- ## Backward Compatibility - **Old configurations** will continue to work without any changes - **New features** are completely optional - Old `command` and new `commands` list **cannot be used** together in one scheduler - The plugin automatically prioritizes `commands` if both are present --- ## Technical Details ### Modified Classes 1. **ScheduledCommand.java** - Added `commands` field (list instead of single command) - Added `daysOfWeek` field for WEEKLY type - Added `gameTimeWorld` and `gameTimeTarget` fields for GAME_TIME type - New methods: `checkWeeklyExecution()`, `checkGameTimeExecution()` - Method `execute()` now supports multiple commands 2. **CommandScheduler.java** - Updated `loadCommands()` method to support: - Loading `commands` array - Parsing `days` array for WEEKLY type - Parsing `world` and `tick` for GAME_TIME type - Added import for `java.time.DayOfWeek` - Updated `addCommand()` method to save WEEKLY and GAME_TIME parameters 3. **commands.yml** - Added examples of all three new types - Updated documentation with command formats --- ## Troubleshooting ### GAME_TIME command didn't trigger **Possible causes:** - World doesn't exist or name is misspelled - `doDaylightCycle` gamerule is disabled - In-game time hasn't reached the specified tick yet **Solutions:** - Verify world name using `/say %server_world_name%` - Enable daylightCycle: `/gamerule doDaylightCycle true` - Check in-game time: `/time` ### WEEKLY command didn't trigger **Possible causes:** - Day name is misspelled - Timezone in `config.yml` is incorrect **Solutions:** - Verify day spelling (e.g., "monday" not "mondy") - Check `config.yml` and set the correct timezone --- ## Questions? For more information, see the `commands.yml` file documentation or README.md
release

TimerCommand 1.0.2

1.0.2
6 дек. 2025 г.31Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bukkit, paper, purpur, spigot
Скачать
Что нового
<center> # **TimerCommand** A comprehensive command scheduler for Spigot/Paper servers </center> --- ## ✨ **Features** - ⏰ **TIME Commands** – Execute commands daily at a specific time - **INTERVAL Commands** – Execute commands repeatedly at fixed intervals - **MONTHLY_DAY Commands** – Execute commands on specific days of the month - **Timezone Support** – Full timezone support with global settings - **PlaceholderAPI Integration** – Use dynamic placeholders in commands - **Dynamic Placeholders** – `%day%`, `%month%`, `%year%`, `%hour%`, `%minute%` - **GUI Menu** – Simple in-game command management - **Command Logging** – Full logging of all actions - ⚙️ **Hot Reload** – Reload configuration without restarting - **Multi-language Support** – CZ/EN/DE/ES/RU/JA --- ## **Support** For support or feature suggestions, contact me: - [Discord (Web)](https://discord.com/users/771295264153141250) - `discord://-/users/771295264153141250` (App) ![bStats](https://bstats.org/signatures/bukkit/Timer%20Command.svg) --- ## **Version History** ### ▶️ **v1.0.2 – Latest** - Added block commands in `config.yml` ### ▶️ **v1.0.1** - Added bStats metrics collection - Performance improvements - Bug fixes ### ▶️ **v1.0.0** - Initial release - TIME, INTERVAL, MONTHLY_DAY command types - Global timezone support - PlaceholderAPI integration - GUI menu with full management - Command logging system - 6 language packs (CS/EN/DE/ES/RU/JA) - Configuration reload support - Dynamic placeholder formatting