soundradar-0.15.0.jar
Curse Maven Snippet
What's new
## 0.15.0 - Directional sound mode, mob head icons, danger arcs
The features from the special fork are now part of the main mod. Everything from
0.14.8 stays unchanged; this release adds a fourth display mode and a new
settings page.
**New - display mode `sound` (Directional sounds)**
- Markers sit on an **invisible circle** around the crosshair: angle = direction,
distance from the centre = approximate distance. No permanent ring.
- Markers fade out (lifetime configurable, default 20 ticks = 1 s) and become
smaller and more transparent with distance.
- **Footsteps** get their own marker with a short trail: white normally,
orange-red while the source is verifiably closing in. The decision uses a
~0.75 s distance history with hysteresis, so it does not flicker. Own
footsteps are hidden by default.
- Maximum number of markers is capped; repeated identical sounds refresh the
existing marker instead of stacking.
**New - visual styles `dots` and `heads`**
- `heads` shows an 8x8 mob head per source, always upright, never rotated.
Unknown sources get a neutral fallback icon instead of a random head.
- Head icons are generated from the nine supplied reference images: creeper,
zombie, skeleton, drowned, enderman, spider, zombie pigman, wither skeleton and
one shared icon for all pillager types. Each image is reduced to an 8x8 colour
table in `MobHeads.java`, so no textures are loaded at runtime.
- Mob mapping: Zombie/Husk, Drowned, ZombifiedPiglin, Skeleton/Stray,
WitherSkeleton, Enderman, Spider/CaveSpider,
Pillager/Vindicator/Evoker/Illusioner.
- Heads can be shown **permanently** (`headAlwaysVisible`), not only when a
sound plays.
- **Colour by distance and danger**: far = grey, medium = amber, near or aggro =
orange-red. Applied as a 1 px outline plus a colour blend so the head stays
recognisable.
- **Ghost markers**: a mob keeps about 10 % opacity after its sound faded
(`headGhostOpacity`), so you do not lose track of it. Mobs not heard yet use
`headIdleOpacity` (default 45).
- Switch with the settings screen, `/soundradar style dots|heads`, or the
rebindable key `L`.
**New - danger arc**
- A **45 degree arc** appears only while a relevant mob is inside the near range.
No permanent ring.
- Centred on the mob direction, drawn on the same invisible circle, faded in and
out over ~200 ms and following the direction with damped motion.
- At most three segments, prioritised: approaching, then very close, then the
rest. Optional: only hostile mobs trigger it.
**New settings (page "Sounds")**
- style, heads always on/off, danger arc on/off, arc angle (default 45), arc
thickness, circle radius (40-260 px), inner start (0-80 %), near range, only
hostile, arc opacity, marker lifetime, marker opacity, head opacity, ghost
opacity, head size, max markers, approach sensitivity, own steps.
- Colours in `config/soundradar.json`: `dangerColor`, `headFarColor`,
`headMidColor`, `headNearColor`, `stepColor`, `stepApproachColor`.
**Fixed**
- Helper methods lost during the previous refactor are restored.
- The danger arc segment list could be created and dropped in the same frame,
which made the arcs invisible; the lifecycle is now correct.
**Technical**
- New classes: `SoundEvents` (capture, mob resolution, steps, lifetime),
`ApproachTracker` (distance history + hysteresis), `DangerArcs` (segments,
priority, damping), `MobHeads` (8x8 tables + drawing).
- Sound events are queued from the sound thread and processed once per tick;
only visible markers are computed per frame.
- Still fully client-side, no network access, no gameplay changes.
---
This mod has no additional files

