# PowerTrims v2.5
This update adds new configuration options for server admins, a visual in-game recipe editor, several bug fixes, and two experimental systems: Trim Mixing and Ultimates.
---
## New Features
### 1. Configurable Primary Abilities
Each trim's active ability can now be disabled independently, while its passive effects remain active. This lets you tune how aggressive each trim is without losing the passive value it provides.
In `config.yml`, under the `abilities:` section, set any trim to `false`:
```yaml
abilities:
wild: false # disables the grapple — players still get Regeneration I passive
sentry: true # active ability works normally
```
---
### 2. Trim Master Switch
A separate top-level toggle exists to completely disable a trim — no passive effects, no active ability, no ultimate. Useful for removing a trim from your server entirely without uninstalling the plugin.
```yaml
trims:
silence: false # completely disabled — armor works as normal armor
```
---
### 3. Recipe Toggles (Vanilla Duplication)
All 17 trim duplication recipes (the vanilla diamond + block method) can now be toggled off per trim. This is set to `false` for all trims by default, meaning players must find templates naturally.
```yaml
recipes:
trim_duplication:
silence: false # must be found in Ancient Cities
sentry: true # can be duplicated with diamonds + a sentry trim like normally
```
---
### 4. Custom Recipes
When vanilla duplication is disabled, you can define a custom shaped crafting recipe for that trim template. The recipe editor GUI is also available in-game.
**In-game editor:** `/ptrecipeeditor <trim>` (requires `powertrims.admin`)
Or configure it manually in `config.yml` under the trim's section:
```yaml
sentry:
custom_dupe:
enabled: true
shaped: true
yield_amount: 2
shape: "DTD,DDD,DDD"
ingredients: "D=DIAMOND,EMERALD;T=SENTRY_ARMOR_TRIM_SMITHING_TEMPLATE"
```
The `shape` field uses a 3x3 grid (rows separated by commas). Each letter in `ingredients` maps to a material or a list of accepted materials (separated by commas).
---
### 5. Configurable Passive Effects
Passive potion effects are now fully configurable per trim. The format is `EFFECT_NAME:AMPLIFIER` (where `0` = Level I, `1` = Level II, etc.). You can assign multiple effects to a single trim.
**Defaults from config:**
| Trim | Default Passives |
|---|---|
| Silence | Strength II |
| Vex | Speed II |
| Snout | Strength I |
| Coast | Dolphin's Grace I |
| Wild | Regeneration I |
| Tide | Dolphin's Grace III |
| Dune | Haste I + Fire Resistance I |
| Eye | Night Vision I |
| Ward | Resistance I |
| Sentry | Resistance I |
| Spire | Speed II |
| Rib | Resistance I |
| Bolt | Speed III |
| Flow | Speed II |
```yaml
passive_effects:
dune:
- "HASTE:0"
- "FIRE_RESISTANCE:0"
bolt:
- "SPEED:2" # Speed III
```
---
### 6. Startup Message Toggle
Disables the welcome message players see when they join.
```yaml
settings:
startup_message_enabled: false
```
---
### 7. Reorganized Config
`config.yml` has been restructured with clear section headers. Settings are now grouped logically: general settings → recipe toggles → trim toggles → ability toggles → passive effects → per-trim settings.
---
### 8. Dynamic Item Lore
Item lore is no longer hardcoded. Changes to ability values in `config.yml` reflect on the item descriptions in inventory. The lore supports configurable placeholder values like cooldowns and radii.
---
### 9. Integrated Action Bars
PowerTrims shares the action bar with other plugins (DSCombat, DSLevels) using a priority slot system. Cooldown messages and combat tags are displayed side by side and no longer overwrite each other.
---
### 10. Revised Command Structure
| Command | Description |
|---|---|
| `/pt <subcommand>` | Central command hub (alias for `/powertrims`) |
| `/pt help` | Lists all available commands |
| `/pt trust <player>` | Trust a player |
| `/pt untrust <player>` | Untrust a player |
| `/pt config [trim]` | Open the config GUI |
| `/pt recipe <trim>` | View a trim's recipe |
| `/ptrecipeeditor <trim>` | Open the visual recipe editor (admin) |
All original standalone commands (`/trust`, `/ability`, `/ptconfig`, etc.) still work.
---
## Bug Fixes
- **Ritual Upgrade Crash** — Fixed a crash in the ultimate upgrade menu when the ritual item limits in `rituals.yml` were modified.
- **Ritual Verification** — Fixed the material checker for ultimate rituals so it correctly identifies and validates required items on the altar.
- **Anti-Cheat Bypass** — Tightened ability integrations to reduce false positives flagged by server-side anti-cheat plugins when players use trim abilities.
---
## Experimental Features
These are opt-in and may change. Enable them in `config.yml`.
---
### Ultimates (Work in Progress)
These two trims have ultimate abilities that can be unlocked through a crafting ritual. These are still being refined — treat them as a preview.
- **Wild Ultimate** (in development) — Transform into a large nature form with vine tether attacks. 15-second duration, increased health pool.
- **Coast Ultimate** (in development) — Aquatic form with a trident throw, a sustained water beam, and a dash.
See `rituals.yml` for the crafting requirements.
---
### Trim Mixing
Allows players to wear mixed trim sets to unlock hybrid classes. The behavior changes based on how many pieces of each trim are worn.
Enable in `config.yml`:
```yaml
trim_mixing:
enabled: true
```
**4/4 — Full Set (The Master)**
- Full passive effects at configured amplifiers.
- Active abilities cost no hunger.
- Ultimate ability can be used.
**3/1 — Utility Split (The Specialist)**
- The 3-piece trim's active ability is available.
- The 3-piece passive runs at full strength.
- The 1-piece trim provides a weak secondary passive (capped at amplifier `0` by default — configurable via `utility_mix.secondary_passive_max_amplifier`).
- Casting costs **3 hunger** (configurable). Requires at least **2 hunger** to cast.
- Ultimates cannot be used.
**2/2 — Dual-Core (The Tactician)**
- Both trim active abilities are available simultaneously.
- `Shift + F` — Primary ability
- `F` — Secondary ability
- Both passives apply, capped at amplifier `0` by default (`dual_core.passive_max_amplifier`).
- Casting costs **5 hunger**. Requires at least **4 hunger** to cast.
- **Cross-cooldown:** Using one ability puts the other on a **7 second** shared cooldown (configurable, with per-combo overrides).
- **Health gate:** If health drops below **50%** of max (`passive_health_gate: 0.5`), the secondary passive is removed. It returns when health recovers.
- Ultimates cannot be used.
**Secondary Blacklist**
Some trims are blocked from acting as a secondary in a 2/2 mix. By default, `silence` and `ward` are blacklisted due to their passive strength.
```yaml
trim_mixing:
secondary_blacklist:
- "silence"
- "ward"
```
**Blocked Combos**
Specific dual-core pairings can be blocked entirely.
```yaml
trim_mixing:
blocked_dual_core_combos:
- "coast+wild"
```
Developer information
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle.
maven { name = "Modrinth"; url = "https://api.modrinth.com/maven" }