Quacky's Better TotemСкачать
ВЕРСИИ (1)
release
Quacky's Better Totem 1.0.0
1.0.030 мая 2026 г.616Minecraft: 1.21.11fabric
Что нового
# Quacky's Better Totems — Version 1.0.0
**Release Date:** May 30, 2026
## Overview
Quacky's Better Totems brings full customization to Minecraft's Totem of Undying. Choose custom textures, sounds, particle colors, and animation effects. Profile-based configuration with ModMenu UI. Client-side only.
## Features
### Texture Customization
- **PNG Import** — drop custom `.png` files into `config/quackys_better_totems/totems/`
- **Auto-Processing** — transparent border auto-crop, proportional downscaling (max 64px)
- **Animated Texture Support** — import full resource-pack ZIPs with `.png.mcmeta` animation metadata
- **Model Override** — custom `.json` models embedded in ZIP packs; UV auto-rescaled for 1.21.11 compatibility
- **Live Preview** — texture changes apply instantly via resource reload
- **Disk Caching** — SHA-256 content-hash cache; files edited = auto re-process
### Sound Customization
- **OGG Support** — drop `.ogg` files into `config/quackys_better_totems/sounds/`
- **Per-Player Sounds** — separate sound + volume + pitch for:
- Self (your totem pop)
- Others (unrelated players)
- Teammates (same scoreboard team)
- **Volume & Pitch Control** — range 0.0–4.0 per sound
### Particle Effects
- **Custom Colors** — RGB sliders for self, others, teammates particle dust
- **Density Control** — scale particle count 0–3× vanilla (0 = none, 1 = vanilla)
- **Vanilla Fallback** — disable color to use default particles
### Animation Tweaks
- **Scale** — resize floating totem pop 0.1–2×
- **Spin Speed** — Y-axis rotation 0–3× (0 = frozen, 1 = vanilla)
- **Test Button** — "Test Totem Pop" plays full animation + sound without consuming item
### Profiles
- **Create** — "New Profile" button
- **Name** — inline rename (editable text field)
- **Duplicate** — copy settings as template
- **Delete** — remove (min. 1 profile required)
- **Cycle** — ◀/▶ buttons to switch active profile
- **Persistence** — auto-save to `config.json`
### User Interface
- **ModMenu Integration** — entire GUI in-game, no manual config files
- **Scrollable Layout** — single-column, compact button layout
- **Profile Management** — inline rename field, delete/duplicate buttons
- **Folder Links** — "Open Totems Folder" / "Open Sounds Folder" buttons for drag-and-drop
## Technical Highlights
### Performance
- **Zero Per-Tick Logic** — mixin fires only on `EntityStatus 35` (totem activation)
- **Disk Caching** — processed textures cached by SHA-256 content hash
- **GPU Texture Reuse** — resource packs served from cache; no re-encode
- **Resource Reload Integration** — single-call mixin injects texture pack at highest priority
- **Async-Safe Image Processing** — `BufferedImage`/`ImageIO` used; no GL context required
### Architecture
- **Modular Managers**:
- `TotemCacheManager` — SHA-256 hash, disk LRU cache
- `TotemImageProcessor` — crop, downscale, PNG encode
- `TotemDirectoryWatcher` — on-demand file scan (no background thread)
- `TotemReloadManager` — orchestrate texture/sound selection + resource reload
- `TotemZipImporter` — extract, validate, model JSON patch
- **Mixin Injection Points**:
- `ClientPlayNetworkHandlerMixin` — intercept totem pop, branch on entity type (self/other/teammate)
- `ReloadableResourceManagerImplMixin` — inject texture pack at resource load time
- `InGameOverlayRendererMixin` — scale animation spin speed
- **Resource Packs**:
- `QbtResourcePack` — single PNG texture override (legacy)
- `DirectoryResourcePack` — full pack serve (for ZIP imports)
### Compatibility
- **Minecraft Version** — 1.21.11 (exact; Yarn API drift)
- **Loaders** — Fabric 0.16.0+ required
- **Dependencies** — Fabric API, ModMenu (no optional mods)
- **Client Launchers** — Lunar Client, Modrinth App, Feather, vanilla Fabric
- **Conflict-Free** — uses LWJGL TinyFileDialogs (no AWT/Swing), no known mod conflicts
## File Structure
```
config/quackys_better_totems/
├── config.json # Profile data + active profile ID
├── totems/ # PNG + ZIP totem imports
│ ├── custom_totem.png
│ └── Duck Totem (Animated).zip
├── sounds/ # OGG sound files
│ ├── pop_sound.ogg
│ └── others_sound.ogg
└── cache/ # Auto-managed processed textures (SHA-256 named)
├── abc123def456...png
└── 789ghi012jkl...png
```
## Installation
1. Install **Fabric Loader** ≥0.16.0 for MC 1.21.11
2. Add to `mods/`:
- Fabric API 0.141.4+1.21.11 or newer
- ModMenu 17.0.0 or newer
- `quackys-better-totems-1.0.0.jar`
3. Launch game via Fabric
## Usage
1. Open **Mod Menu** → **Quacky's Better Totems** → configure
2. **Dashboard**: toggle mod, switch profile, test pop
3. **Profiles**: rename, duplicate, delete, cycle
4. **Editor**:
- Import PNG/OGG via file picker
- Set colors (RGB sliders, self/others/teammates)
- Adjust scale, spin, particle density
- Set per-player sounds (volume, pitch)
5. **Save & Close** to persist
## Known Limitations
- HUD totem texture override not wired (item-model rewrite in 1.21.11 is invasive)
- HUD color tint uses removed `RenderSystem.setShaderColor` API; color visible in particles only
## License
MIT. Quack responsibly.
## Author
**DeQuackDealer**
---
**Build Info**
- JAR: 174 KB
- Gradle: 9.4.0
- Loom: 1.16.2
- Java: 25.0.1