promotional bannermobile promotional banner

TaCZ Performance & Polish

Performance optimization, combat HUD improvements, gunplay polish, QoL, and large-firefight stabilization for TaCZ.
Back to Files

TaCZ-Performance-Polish-1.20.1-3.5.0.jar

File nametaczpolish-3.5.0.jar
Uploader
Hyouka30Hyouka30
Uploaded
Sep 11, 2026
Downloads
497
Size
257.6 KB
Mod Loaders
Forge
File ID
8859038
Type
R
Release
Supported game versions
  • 1.20.1

Curse Maven Snippet

Forge

implementation fg.deobf("curse.maven:tacz-performance-polish-1679183:8859038")

Learn more about Curse Maven

What's new

# 3.5.0 FINAL

- Promotes the validated RC6.3 source to the stable 3.5.0 baseline.
- Includes aim-to-show / hit-to-linger hostile health bars, optional armor display, BRL-safe nameplate clearance, the red health palette, and non-overlapping damage-chip geometry.
- Freezes the RC5 PERF1 combat/projectile performance kernel: no new damage, raycast, projectile, networking, or entity-scan behavior is introduced by the FINAL promotion.
- BRL remains optional and is never required to load or use TaCZ Performance & Polish.
- This source is the rollback baseline for the 4.0 development line.

## 3.5.0 RC6.3 - Combat HUD health-bar flash fix

- Fixed intermittent red/grey health-bar flashing by removing overlapping translucent health/chip geometry.
- Damage chip now renders only in the exposed lost-health strip to the right of current red health.
- No combat-kernel, projectile, damage, raycast, networking, or entity-scan changes.

## 3.5.0 RC6.2 - Combat HUD red-health visual hotfix

- Changed the hostile target health-bar default from muted orange (`#E09022`) to high-contrast red (`#E23B3B`).
- Added a one-time client-config migration: installs still using the old RC6 default are upgraded to red, while custom health colors are preserved.
- HUD page reset-to-default now restores the complete target-health-bar palette and settings, including the red health color.
- No projectile, damage, raycast, networking, profiler, FX-budget, or server gameplay paths changed.

# 3.5.0 RC6 - Combat Target Health Bars

- Adds Division-inspired hostile health bars as a fully client-side TaCZ Polish feature.
- Works with TaCZ alone; Better Randomized Loot is never a dependency and no BRL classes are referenced.
- When BRL is detected, Polish reserves extra vertical clearance so its health bar does not compete with BRL elite/modifier nameplates.
- Default `TARGET_ONLY` mode renders the current close crosshair hostile plus the most recent hostile reported by TaCZ's existing client hit callback, allowing gun-range targets without a new raycast or world scan.
- Optional `COMBAT_NEARBY` mode keeps only a small bounded set of recently hit TaCZ hostiles.
- Adds compact health, five-segment armor display, damage-chip animation, headshot pulse, optional numeric HP, distance/scale/linger/fade/cap controls, and configurable health/armor colors.
- Vanilla Ender Dragon and Wither remain on their boss-bar presentation and do not receive Polish target bars.
- Adds Health Bar controls to the branded HUD config page and a quick module toggle.
- RC5 PERF1 projectile processing, damage, hit location, raycast, server profiler, adaptive thresholds, and combat kernel are unchanged.

# 3.5.0 RC4 V2 - Modern Shooter HUD & Customization

- Builds on the frozen RC4 V1.2 ultrawide-safe config UI.
- Adds a normalized drag/scale HUD layout editor for Kill Feed, Combat Feedback, Context HUD, and Debug HUD.
- Adds configurable dynamic-crosshair RGB/opacity/size/thickness/arm length/center dot while keeping aim center locked.
- Adds configurable hit/headshot/kill feedback colors and scale.
- Adds local-only center combat feedback driven by the existing server-resolved kill record: KILL, HEADSHOT, DOUBLE KILL, TRIPLE KILL, QUAD KILL, MULTI KILL xN, and configurable cosmetic score events.
- Remote LAN kills continue to populate the Kill Feed but do not trigger local center medals.
- Adds Kill Feed colors for local/remote killer, victim/local victim, weapon, headshot marker, and background plus an in-GUI hex/RGB color picker.
- Adds an optional zero-hard-dependency reward feedback API. `AUTO` accepts provider reports; `OFF` is a hard kill switch. Current BRL Full RC2-HOTFIX2 is detected but does not yet report XP into Polish, so the real `+XP` line stays dormant until the provider bridge is wired.
- Bumps Polish network protocol from `3` to `4` for the optional reward-feedback packet. Both LAN clients must run RC4 V2.
- Projectile controller, projectile/hit-location/metadata mixins, mixin config, server kill-feed broadcaster, auto reload, unload, and sprint QoL remain unchanged from RC4 V1.2.

# 3.5.0 RC4 V1.2 - Footer / Status Layout Hotfix

- Gives live telemetry a dedicated status strip above the fixed Apply / Done / Reset footer.
- Hard-clips row rendering to the scroll viewport so settings cannot bleed into the status/footer region after GUI-scale changes.
- Uses compact `FPS | PRESET | CLIENT` telemetry on low-height or narrow GUI layouts.
- Preserves RC4 V1.1 scrolling, config behavior, networking, projectile processing, kill feed, auto reload, and gameplay logic.

# 3.5.0 RC4 V1.1 - Ultrawide Config Hotfix

- Fixes RC4 V1 settings rows overlapping the footer on low GUI-height / ultrawide layouts.
- Adds true mouse-wheel scrolling for the settings viewport.
- Adds a compact low-height row layout and visible scrollbar/scroll position indicator.
- Off-screen controls are hidden and non-interactive, so they cannot be clicked through the footer.
- No projectile, combat, networking, kill-feed transport, auto-reload, or gameplay logic changes.

# 3.5.0 RC4 V1

- Replaced the two-column vanilla-style config screen with a branded dark-metal/orange TaCZ Performance & Polish configuration UI.
- Added persistent left-side categories: Presets, Combat, Effects, Tracers, Kill Feed, Per-Gun, and Advanced.
- Added always-visible Adaptive / Performance / Balanced / Quality preset tabs backed by the existing `QualityPreset` config; no preset backend or combat behavior was rewritten.
- Added live grouped controls for the existing client visual/polish settings, including effect quality, shell/impact controls, tracer distances, kill-feed appearance, ADS/animation polish, and diagnostics.
- Added compact meter-style numeric controls for selected settings; click increments and Shift-click decrements while respecting the existing Forge config bounds.
- Server-authoritative gameplay/QoL and projectile settings are intentionally read-only status in the client screen. RC4 V1 does not add a client-to-server config mutation path.
- Added Apply, Done, and per-page reset controls. Settings still use the existing Forge TOML values and snapshot/cache refresh paths.
- Per-gun V1 page exposes enable/state information and current override counts; the full text editor remains deferred so RC4 does not rewrite the proven override parser/storage format.
- No network protocol change from RC3, no new mixins, no projectile changes, no damage changes, and no `EntityUtil` hooks.

# 3.5.0 RC3

- Added server-selected automatic reload policy: `OFF`, `ON_TRIGGER`, or `ON_EMPTY` (default).
- `ON_TRIGGER` requests TaCZ's normal reload after a dry-fire attempt on an empty magazine when reserve ammo is available.
- `ON_EMPTY` watches the held TaCZ gun client-side and requests the native reload as soon as the client observes zero usable rounds, retrying naturally until TaCZ's normal action state allows the reload.
- Inventory-fed guns are excluded; reserve-ammo checks, reload events, animations, attachment capacity, dummy/infinite ammo, and the server reload transaction remain TaCZ-owned.
- The auto-reload mode is part of the existing server -> client gameplay-QoL settings sync. Polish network protocol bumped to 3 for the expanded settings packet.
- Added only one narrow client mixin at `LocalPlayerShoot.shoot` for the empty-trigger fallback. No projectile, damage, `EntityUtil`, raycast, or bullet-lifecycle code changed.
- RC2 LAN kill-feed fix remains intact.

# 3.5.0 RC2

- Fixed built-in kill feed not showing another LAN player's gun kills.
- Kill-feed presentation data is now resolved on the logical server and broadcast to clients in the same dimension.
- The HUD packet contains only killer/victim display names, UUIDs, gun id, and headshot state; it does not alter damage, projectile, or death handling.
- Polish network protocol bumped to 2 so RC1/RC2 mismatches fail cleanly instead of decoding incompatible packet tables.
- Projectile processing and combat mixins are unchanged from RC1.

# TaCZ Performance & Polish 3.5 Changelog

## 3.5.0-rc1 — Co-op Release Candidate

Feature freeze candidate based on the validated DEV3/QOL3 line.

- Production Adaptive thresholds restored: 6 ms native bullet work, 55 ms server tick, 2 hot samples.
- Periodic projectile timing sample logging is disabled by default to keep long play sessions quiet.
- Projectile mode-change logs and slow-combat hitch diagnostics remain available for failure analysis.
- Built-in kill feed, gameplay QoL, Native/Hitscan/Adaptive projectile core, expanded hit locations, and the v3 performance/polish systems are unchanged from the feature-complete candidate.
- No `EntityUtil` hook or bullet entity-manager rewrite is introduced.
- RC1 is intended for multiplayer/co-op soak testing; no new feature work should land unless required to fix a release blocker.


- Establishes native TaCZ projectiles as the DEV2 validation baseline.
- Removes legacy Instant Hit and TaCZ Tweaks detection/state from runtime compatibility policy.
- Removes the Instant-Hit-specific cosmetic pressure branch.
- Removes the misleading server `shots=0` metric; DEV2-R2 is explicitly a downstream hit/death profiler.
- Removes dead raycast/candidate getters left behind after the EntityUtil compatibility rollback.
- Makes slowest-phase selection allocation-free instead of creating a temporary phase array per combat-active tick.
- Adds `targets` and `unresolved` hit accounting to help detect incomplete/cancelled TaCZ hit transactions.
- Adds `baseline=native` to combat and phase diagnostics so test logs are self-identifying.
- Updates the debug HUD label to `3.5 DEV2-R2`.
- Updates the Forge development baseline to 47.4.10 to match the validated runtime pack.
- No damage, ballistic, projectile-lifecycle, networking, or third-party callback behavior is changed.

# 3.5.0 DEV1 HOTFIX 1

- Removed the EntityUtil mixin because it competes for the same Level.getEntities redirect required by TaCZ Expands 1.1.4 and can crash when a bullet first ticks after reload.
- Combat profiler remains active through safe gun fire / hit / kill event boundaries.
- Raycast candidate counts are temporarily unavailable when using this compatibility-safe build.

# TaCZ Performance & Polish 3.5.0 DEV1

## Combat Intelligence foundation
- Added a low-overhead server combat profiler that only logs combat-active ticks exceeding a configurable threshold.
- Profiler counters include TaCZ shots, gun-hit Pre/Post callbacks, gun kills, and combat-active server tick duration. Direct EntityUtil raycast-candidate instrumentation is intentionally disabled for TaCZ Expands compatibility.
- Added `/taczpolish profiler status` to inspect the latest combat-active server-tick snapshot without opening logs.
- Slow-tick logging includes the detected TaCZ addon/render stack so compatibility reports are self-describing.

## Compatibility-aware adaptive quality
- TaCZ addon detection is snapshotted once for Expands, Enchantments Overhaul, Kill Feed, Weapon Leveling, Weapon Leveling Compat, TaCZ Accel, Ammo Query, Oculus, Embeddium, and Accelerated Rendering.
- Added a compatibility policy that can lower only decorative FX budgets during known Oculus + Accelerated Rendering pressure or dense Expands activity.
- Compatibility policy never changes damage, ammo use, raycasts, hit callbacks, or networking.

## Automatic weapon intelligence
- Local gun profiling now includes TaCZ `bullet_amount` in addition to RPM.
- Pellet-heavy weapons automatically receive lower decorative effect multipliers so one trigger pull cannot multiply cosmetic work by every pellet.
- Adaptive local tracers consume the same resolved weapon effect profile.

## Polish improvements
- Attachment comparison now includes cached TaCZ-native damage, headshot, armor-ignore, weight, capacity, and zoom deltas.
- Rapid hit feedback now aggregates into `HIT xN`, `HEADSHOT xN`, or `KILL xN` instead of rebuilding/spamming a separate label for every hit.
- Gun-pack diagnostics are deferred until TaCZ client indexes settle, avoiding the misleading `0 guns | 0 ammo | 0 attachments | OK` scan seen during early reload phases.
- The underwater-bubble projectile redirect is explicitly fail-open with `require=0`.
- Debug HUD now reports compatibility policy source, resolved weapon profile/pellet count, and the latest combat-profiler snapshot.

## Existing 3.0 combat-final work retained
- hard per-tick FX burst ceiling
- emergency frame-hitch governor with gradual recovery
- lazy projectile metadata
- zero-allocation hit-location context
- shell fast path
- bullet-hole coalescing
- compatibility-safe native collision baseline after removal of the conflicting `EntityUtil` micro-optimization
- dedicated-server-safe client bootstrap
- optional mixin fail-open defaults

## Validation note
This source tree is statically audited against TaCZ 1.20.1 / 1.1.8-hotfix. The current build environment cannot reach `services.gradle.org`, so the final ForgeGradle compile must be run locally with `gradlew.bat build` before using the jar.

## Sound-resource note
TaCZ 1.1.8-hotfix already maintains `SOUND_RESOURCE_EXISTS_CACHE` and `MISSING_SOUND_WARNED` in `SoundPlayManager`, including cache clear on resource reload. 3.5 deliberately does not add a duplicate sound-resource mixin.

### DEV1 HOTFIX2
- Bumped every release-facing version source to `3.5.0-dev1-hotfix2` and added a Gradle version-consistency guard that fails packaging if processed `mods.toml` does not match `mod_version`.
- Reworded combat hitch logging to report a **slow server tick observed during gun activity**, rather than implying TaCZ caused the stall.
- Added `activity=shot`, `activity=shot+hit`, or `activity=hit-only` classification plus `note=correlation_not_causation` to slow-tick diagnostics.
- This makes overlap with Worldgen Performance Polish stalls much easier to interpret and prevents zero-shot/hit-only overlap from being presented as proof of a TaCZ-origin hitch.

## 3.5.0-dev2 - Hit/Death Pipeline Profiler

- Added safe synchronous hit/death phase timing without injecting into TaCZ Expands, Instant Hit, Weapon Leveling, Kill Feed, or Forge EventBus internals.
- Distinguishes nonlethal gun hits (`Pre -> Post`) from lethal gun hits (`Pre -> Kill`).
- Measures the Forge listener windows for LivingAttack, LivingHurt, LivingDamage, and LivingDeath on entities already marked by a TaCZ gun-hit event.
- Uses a fixed 64-slot primitive same-tick target table; no per-hit maps or profiler object allocation.
- Logs per-phase detail only when a phase exceeds `combat_profiler.phaseWarnThresholdMs` (default 3 ms).
- Keeps `note=correlation_not_causation`: phase timing identifies the expensive synchronous stage, not a specific third-party mod.
- EntityUtil remains intentionally untouched for TaCZ Expands compatibility.


## 3.5.0-dev3 — Projectile Modes

- Added server-authoritative projectile mode enum: `NATIVE`, `HITSCAN`, `ADAPTIVE`.
- `NATIVE` is the validated DEV2-R2 fallback and remains the default.
- `HITSCAN` accelerates supported non-explosive TaCZ bullets through one bounded first-tick native collision pass; it does not replace TaCZ damage, ammo, heat, headshot, piercing, block-hit, or hit/kill event semantics.
- `ADAPTIVE` measures time spent in native TaCZ bullet processing plus whole-server-tick pressure, requires sustained hot samples, then holds hitscan for the active firefight and returns to native after a quiet window.
- Explosive/delayed-explosion ammunition remains native in all DEV3 modes.
- Added a bounded hitscan distance (default 256 blocks) to avoid huge query volumes in heavily modded entity populations.
- Added DEV3 projectile transition/sample diagnostics for tuning.
- Added no `EntityUtil` mixin, redirect, entity-manager hook, spawn cancellation, or custom replacement damage engine.
- Instant Hit and TaCZ Tweaks remain outside the supported DEV3 baseline.

## 3.5.0-dev3-qol1 — QoL Consolidation Test Build

Built on the validated DEV3 Native / Hitscan / Adaptive projectile core.

### Added
- Server-authoritative `gameplay_qol` master switch and independent toggles for:
  - shoot while sprinting
  - reload while sprinting
  - immediate reload after a shot
  - unload-magazine key
- Server -> client QoL setting sync so local TaCZ sprint/reload gates match the server on dedicated servers.
- `U` default keybind: **Unload Magazine**. The server validates the held TaCZ gun and calls TaCZ's public `IGun.dropAllAmmo` API; inventory-fed guns are ignored.
- Independent client sound toggles for normal flesh-hit, headshot-hit, and kill-confirm sounds. Hit markers/events/Kill Feed/Weapon Leveling remain untouched.

### Safety / compatibility boundaries
- No `EntityUtil` hooks or redirects.
- No bullet lifecycle/removal changes beyond the already-tested DEV3 projectile mode system.
- No copied TaCZ Tweaks / Instant Hit implementation code; behavior is implemented independently against TaCZ 1.1.8-hotfix APIs and source surfaces.
- No crawl rewrite, global balance modifier, FirstAid/VS/Immersive Vehicles compatibility layer, or piercing rewrite in this build.


## 3.5.0-rc1 — Kill Feed Visual Polish

Built directly on DEV3-QOL2. Kill-event sourcing, combat networking, QoL server sync, and the validated Native / Hitscan / Adaptive projectile core are unchanged.

### Changed
- Reduced built-in feed default render scale to 0.84 for a less scoreboard-like footprint.
- Lower default row background opacity and tighter row spacing.
- Added configurable top/right margins, scale, row gap, and background opacity.
- Older feed entries now progressively dim before their normal expiration fade.
- Weapon labels are flattened to neutral gray so pack-provided text formatting cannot overpower killer/victim readability.
- Added optional consecutive duplicate aggregation (`x2` through `x99`) with a configurable 1300 ms default window.
- Added `Collapse Repeat Kills` to the in-game Polish Modules screen.

### Safety / compatibility boundaries
- No new packet, mixin, projectile hook, damage hook, death rewrite, or `EntityUtil` access.
- Aggregated display components are rebuilt only on kill events; normal HUD rendering does not rebuild strings/components each frame.
- Standalone `tacz_kill_feed` coexistence guard remains unchanged.


## 3.5.0-dev3-qol2 — Built-in Kill Feed Test Build

Built directly on DEV3-QOL1. The validated Native / Hitscan / Adaptive projectile core remains unchanged.

### Added
- Built-in client gun kill feed driven by TaCZ's native client `EntityKillByGunEvent`; no duplicate kill networking is added.
- Localized TaCZ gun names in feed entries with optional native-headshot `HS` markers.
- Configurable maximum entries, display lifetime, fade window, weapon display, headshot marker, and local-player-only filtering.
- Top-right lightweight HUD rendering that remains visible even when the local player is not currently holding a gun.
- Automatic coexistence guard: if the standalone `tacz_kill_feed` addon is installed, the Polish feed stays dormant to avoid duplicate entries. Remove the standalone addon to make the built-in feed authoritative.

### Safety / compatibility boundaries
- No new server packet or combat-network duplication for kill feed data.
- No projectile, `EntityUtil`, entity-manager, damage, hit-registration, or death-processing rewrite.
- Weapon Leveling, TaCZ kill events, hit feedback, and kill-confirm sound behavior remain independent.

## 3.5.0 RC6.1 - Combat HUD targeting hotfix
- TARGET_ONLY now shows hostile health bars when aimed at, before the first hit, out to the configured health-bar range.
- TaCZ hits still pin the target through the configured linger/fade window.
- Aim acquisition uses per-rendered-entity ray/AABB math only; no world entity scan or server packet.
- Fixed custom-name + BRL clearance stacking that could push the health bar too low toward the model.
- Raised the normal above-head anchor slightly for more consistent placement.

## FINAL config UX backport
- Added hover explanations for all existing 3.5 config rows.
- Added plain-English hover help for all four 3.5 quality presets.
- Added an in-screen hint that options can be hovered for full explanations.
- Refined per-gun override wording.
- No 4.0-only systems or combat-kernel changes were backported.

This mod has no additional files