Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,13 @@ Before this, `/tfmc` was served by AACommandsFiller (suggestions only) with Cond
| `masks` | everyone | A random mask; 10 s cooldown |
| `poster <name>` | everyone | Places a configured image poster |
| `ban <player> [reason]` | `tfmc.helper` | Essentials `tempban` for 8 hours |
| `helper promote\|demote` | `helper.promote` / `helper.demote` | One step along the `helper` LuckPerms track |
| `helper+ promote\|demote` | `helper+.promote` / `helper+.demote` | One step along the `helper+` LuckPerms track |
| `promote\|demote` | the step's permission on the player's highest track | One step along that LuckPerms track (see below) |

### Promote and demote

`helper-tracks` in `tfmc.yml` lists the LuckPerms tracks lowest first (`helper`, `helper+`, `staff`) with a promote and a demote permission for each. A player's highest track is the last one that holds one of their own global groups, and `promote` and `demote` always act on it. Each is offered only when the player holds that step's permission on that track. Membership decides the track because the active `helper+`, `staff_inactive` and `staff` groups hold `*`, which matches every track's permissions. A step never adds a player to a track they are not on.

On each track, the `_player` group grants the promote permission and the `_inactive` group grants the demote permission. The active group inherits both.

### Disabled by default

Expand All @@ -36,7 +41,7 @@ These sections ship with `enabled: false` in `tfmc.yml` and stay out of the comm

## Configuration

`plugins/TFMCCore/tfmc.yml` holds the messages (MiniMessage), console commands, item and mask lists, calendar names, donor tiers and posters. Reload it with `/tcore reload tfmc`; changes to `helper-tracks` need a restart because they add or remove command nodes.
`plugins/TFMCCore/tfmc.yml` holds the messages (MiniMessage), console commands, item and mask lists, calendar names, donor tiers and posters. Reload it with `/tcore reload tfmc`.

The booster cooldown is stored in `plugins/TFMCCore/tfmc-cooldowns.yml`. On the first start without that file, TFMCCore imports last-use times from `plugins/ConditionalEvents/players/*.yml` (`events.global_booster.cooldown`).

Expand Down