Vantage Tacz Compat
A TaCZ addon that inflicts body-part-specific wounds on gunshots — head trauma, bleeding, fractures — with a painkiller system to suppress symptoms. Built for Vantage: Zero.
- Загрузки
- 322
- Подписчики
- 2
- Обновлён
- 14 июля 2026 г.
- Лицензия
- MIT
Опубликован 7 июня 2026 г.
Vantage TaCZ Compat
A comprehensive mod adding body-part injuries, a consumable medical system, a weight system, stamina mechanics, and AI enemies for the TaCZ gun mod — built for the Vantage: Zero modpack.
Core Features
Weight System
- Inventory items have weight (KG); main inventory and offhand count toward total weight
- Three-tier status: Normal → Encumbrance (slowdown) → Overloaded (severe slowdown + jump reduction)
- Configurable thresholds (default: heavy 80 KG, overload 150 KG)
Weight Limit Boosteffect temporarily raises both thresholds- Independent armor slowdown: worn armor slows the player by its weight (default 80% of weight as %), stacking with the weight system
- Different armor materials have different weights: Leather 10 KG/set, Iron 26 KG/set, Netherite 42 KG/set
- Item tooltips show weight; armor additionally shows red "-X% Move Speed"
Body-Part Injury System
- TaCZ gunshot hits are judged by hit location — does NOT use TaCZ's
isHeadShot() - 7 body parts: Head, Abdomen, Left/Right Arm, Left/Right Leg
- 4 wound effects:
- Heavy Wound (Head, 20% chance): max health -10%
- Abdomen Wound (Abdomen, 20% chance): max health -10%
- Bleeding (Arms, 30% chance): 1 damage every ~6s, up to 4 layers, stops at HP ≤1
- Fracture (Legs, 20% chance): -15% speed per leg, -30% with both legs
- All wounds persist until treated or death
- Fall fracture: ≥5 block fall triggers, base 50% + 10% per block
Painkiller System
- Painkiller suppresses bleeding damage and fracture slowdowns (HUD icons remain visible)
- Fractures can still stack while suppressed
- On expiry: nausea + scream sound if heavy/abdomen wounds present
Consumable Medical System
- Wheel UI (B key): ToolBelt-style radial selector, auto-aggregates inventory consumables
- First-person 3D animation: model follows view, with camera shake, player arms, environment lighting
- In-use HUD: progress bar + item name + remaining seconds + cancel hint
- Two durability modes:
proportional: consumes durability proportional to missing health — for healing itemsfixed: 1 durability per use — for wound-clearing items
- Pre-use checks: blocks use if health full or no matching wound, with feedback message
- Use restrictions: no hotbar switching / inventory / firing / drop / swap during use
- Cancel: press R to cancel (HUD shows key hint, supports mouse button icons)
- 7 default consumables: Bandage, Painkiller, Stim, Syringe, Medical Kit, Tourniquet, M2 IM Injection
New Armor Mechanic (TaCZ Bullet Damage)
- Bullet damage splits by
armor_ignore: piercing portion damages health, non-piercing consumes body-part armor durability - Armor durability exhausted but NOT destroyed — protection gone, reserved for repair
- Consumables can repair armor, but permanently reduce its max durability cap
Stamina System
- Sprint drains stamina, idle regenerates (with short delay)
- Fatigued state when exhausted — blocks sprint until recovered
- Jumping costs 10, sliding costs 20
Stamina Restoreeffect instantly refills- Vanilla hunger disabled (requires HungerStrike)
- Aiming cancels sprint
- Slide (V key, disabled by default): slide while sprinting, 30-tick speed decay, slide-jump boost
Player Health
- Base health = 20 + 30 = 50 HP (25 hearts), configurable
- Fully restored on first join and respawn
HUD Overlays
- Health: avatar + health bar + percentage + 4 armor durability icons + oxygen bar
- Stamina: bar above hotbar, hides when full, turns red below 20
- Effect status: 9×9 effect blocks with smooth progress fill
- Consumable use: progress bar + info below crosshair
AI Enemies
- Soldier: 3-state AI (Patrol → Alert → Combat), random SMG, squad aggro sharing
- Sniper: immobilized, random sniper rifle, 3~6s shot interval
- Configurable AI parameters and gun blacklist
- Creative tab spawn eggs
Key Bindings
| Key | Default | Function |
|---|---|---|
| Consumable Wheel | B | Open consumable selection wheel |
| Cancel Use | R | Cancel active consumable use |
| Slide | V | Slide while sprinting (if enabled) |
Dependencies
| Mod | Required | Notes |
|---|---|---|
| Forge | Yes | ≥46 |
| Minecraft | Yes | 1.20.1 |
| TaCZ | Yes | ≥1.1.4 |
| HungerStrike | Yes | Disables vanilla hunger |
| PlayerAnimator | No | Slide animations (optional) |
| ParCool | No | Stim effect (optional) |
Localization
- English (US)
- 简体中文
Usage Guide
Installation
- Install Minecraft 1.20.1 + Forge 47.x
- Place the following mods into the
mods/folder:- TaCZ (≥1.1.4)
- HungerStrike (≥8.0.0)
- Vantage TaCZ Compat (this mod)
- Launch the game
Quick Start
1. Injuries & Treatment
- After being shot by a TaCZ weapon, you may receive different wounds depending on hit location (head Heavy Wound, abdomen Abdomen Wound, arm Bleeding, leg Fracture)
- Press B to open the consumable wheel and select the appropriate item:
- Bleeding → use Tourniquet or Bandage
- Heavy Wound / Abdomen Wound / Fracture → use Bandage
- Low health → use Medical Kit or Syringe
- Need sustained combat → use Painkiller (suppression) or Stim (speed)
- You can also use Painkiller to temporarily suppress bleeding and fracture effects (beware of comedown)
2. Weight Management
- Open your inventory and hover over items to see their weight (KG)
- Total weight above 80 KG → Encumbrance (light slowdown)
- Total weight above 150 KG → Overloaded (severe slowdown + jump reduction)
- Armor weight does NOT count toward inventory weight, but armor independently slows you (heavier armor = more slowdown)
- The
Weight Limit Boosteffect temporarily raises thresholds
3. Stamina Management
- Sprinting drains stamina; when exhausted, you cannot sprint until you recover above 20
- The stamina bar is above the hotbar; it turns red below 20
- Jumping costs 10 stamina, sliding costs 20
4. Consumable Use Flow
- Press B to open the wheel
- Move the mouse to the target consumable's sector (center shows the item name)
- Release B to confirm use
- During use:
- A progress bar and remaining time appear at the bottom of the screen
- Slowness II is applied to the player
- Hotbar switching, inventory, firing, and item dropping are disabled
- Press R to cancel (no effects consumed)
- When use completes, the gun draw sound plays automatically
Configuration
All settings are in config/vantagetaczcompat-common.toml. Changes require a game restart. Key sections:
Weight
[Weight]
weightMax = 200.0 # Maximum weight cap
heavyThreshold = 80.0 # Encumbrance threshold
overloadThreshold = 150.0 # Overload threshold
armorSpeedPenaltyPerKg = 0.8 # Armor slowdown factor (0.8 = 80% of weight)
overloadJumpReduction = 0.5 # Overload jump reduction (0.5 = 50% less height)
weightLimitBoostAmount = 40.0 # Weight Limit Boost effect amount
# Item weight overrides, format: mod:item,weight
itemWeights = ["minecraft:iron_block,8.0", "minecraft:netherite_chestplate,16.0", ...]
Wounds
[Damage Multipliers]
headDamageMultiplier = 1.0 # Head damage multiplier
abdomenDamageMultiplier = 1.0 # Abdomen damage multiplier
limbDamageMultiplier = 0.3 # Limb damage multiplier
[Bullet Wound Chances]
headWoundChance = 0.20 # Head → Heavy Wound chance
abdomenWoundChance = 0.20 # Abdomen → Abdomen Wound chance
bleedingChance = 0.30 # Arm → Bleeding chance
fractureChance = 0.20 # Leg → Fracture chance
[Fall Fracture]
fallFractureChance = 0.50 # Base fracture chance
fallFractureMinDistance = 5.0 # Minimum fall distance
fallFractureChancePerBlock = 0.10 # Chance per additional block
Stamina
[Stamina Values]
staminaMax = 100.0 # Maximum stamina
staminaSprintDrain = 0.2 # Sprint drain per tick
staminaRegen = 0.3 # Idle regen per tick
staminaRegenDelay = 20 # Regen delay after drain (ticks)
staminaJumpCost = 10.0 # Jump cost
staminaSlideCost = 20.0 # Slide cost
Consumable Use
[Consumable Use]
healIntervalTicks = 5 # Heal loop interval (ticks)
slowdownAmplifier = 1 # Slowdown amplifier (1 = Slowness II)
slowdownExtraDuration = 20 # Extra slowdown after animation (ticks)
New Armor Mechanic
[New Armor Mechanic]
enableNewArmorMechanic = true # Toggle
armorDurabilityMultiplier = 4.0 # Non-piercing damage → armor durability factor
Custom Consumables
This mod loads consumables via the TaCZ extension pack mechanism. The default pack is at .minecraft/tacz/vtc_default_consumable/.
Adding a New Consumable
Create files in the extension pack directory:
vtc_default_consumable/ └── assets/vantagetaczcompat/ ├── consumable/my_item.json ← Definition ├── geo_models/consumable/my_item_geo.json ← 3D model ├── animations/consumable/my_item.animation.json ← Use animation └── textures/consumable/ ├── model/my_item.png ← 3D model texture └── slot/my_item.png ← 2D inventory iconDefinition file example:
{ "name": "item.vantagetaczcompat.my_item", "model": "vantagetaczcompat:consumable/my_item_geo", "texture": "vantagetaczcompat:consumable/model/my_item", "slot_texture": "vantagetaczcompat:consumable/slot/my_item", "animation": "vantagetaczcompat:consumable/my_item_use", "animation_duration": 3.0, "heal_start_delay": 0.5, "durability": 4, "use_ticks": 60, "durability_mode": "fixed", "armor_repair_type": null, "armor_max_durability_reduction_percent": 0.0, "effects_to_apply": [ { "id": "vantagetaczcompat:clear_wound", "duration": 1, "amplifier": 0 } ], "effects_to_remove": [] }Add the translation in the lang file:
{ "item.vantagetaczcompat.my_item": "My Item" }Press F3+T to hot-reload resources — the new consumable will appear in the creative tab immediately
For full field reference, see docs/consumable_json_format.md in the project.
Custom Item Weights
Add entries to itemWeights in the config:
itemWeights = [
"minecraft:iron_block,8.0",
"mymod:my_item,15.5"
]
Format is mod:item,weight. Unlisted items use the default formula (based on stack ratio).
Obtaining Consumables
Open the creative inventory and find the Vantage TaCZ Compat tab. All loaded consumables are displayed dynamically. They share a single registered Item, distinguished by the ConsumableId NBT tag.
FAQ
Q: Consumables don't appear?
A: Ensure .minecraft/tacz/vtc_default_consumable/ exists and contains a consumable/ directory. The mod auto-exports on first launch. If missing, delete the directory and restart to regenerate it.
Q: Config changes don't take effect?
A: Config changes require a game restart. Note that changing defaults in gradle.properties does NOT auto-update an existing toml file — either delete config/vantagetaczcompat-common.toml to regenerate it, or edit the toml file directly.
Q: Can't see the first-person animation? A: Make sure your main hand is empty or holding a consumable. The consumable model automatically hides the gun and appears during use.
Q: Cancel hint didn't update after rebinding? A: The HUD dynamically reads the current key binding and shows the corresponding hint, including mouse button icons. Changes take effect immediately.
Q: Why doesn't armor disappear at 0 durability? A: This is by design in the new armor mechanic. Armor at 0 durability loses its protection but is preserved as an item, reserved for future repair consumables.
Q: How to disable sliding?
A: Set enableSlide = false in the config (disabled by default).
Ченджлог
2.0.0Бета1.20.1 · 14 июля 2026 г.
2.0.0 Beta
Weight System
- Added inventory weight system: main inventory (slots 0-35) and offhand (×1.5) count toward total weight, capped at
weightMax(default 200 KG) - Armor slots do NOT count toward inventory weight — armor slowdown is handled by a separate system
- Three-tier status based on effective thresholds (config + Weight Limit Boost bonus):
- Below
heavyThreshold(default 80 KG): normal heavyThreshold~overloadThreshold(default 150 KG): Encumbrance — light speed penalty (0~6%)- Above
overloadThreshold: Overloaded — heavy speed penalty (8~20%) + jump height reduction
- Below
- Overloaded jump reduction: Y-momentum cut by
overloadJumpReduction(default 0.5 = 50% less height), scaled higher as weight increases - New effects:
encumbrance(HARMFUL),overloaded(HARMFUL),weight_limit_boost(BENEFICIAL, raises both thresholds) - All three effects show icons in the effect overlay
Armor Speed Penalty
- Worn armor now slows the player independently of the weight system
- Speed reduction = total armor weight ×
armorSpeedPenaltyPerKg(default 0.8 = 80% of weight as % slowdown) - Each armor material has a distinct weight (configurable via
itemWeights):- Leather: 10 KG/set → 8% slowdown
- Chainmail: 20 KG/set → 16% slowdown
- Iron: 26 KG/set → 20.8% slowdown
- Gold: 32 KG/set → 25.6% slowdown
- Diamond: 34 KG/set → 27.2% slowdown
- Netherite: 42 KG/set → 33.6% slowdown
- Uses a separate attribute UUID from the weight system — both can stack
Item Weight Tooltip
- All items display
Weight: X.X KG(gray) in their tooltip - Armor items additionally display
-X% Move Speed(red) - Weights respect stack count (matches inventory calculation)
Consumable System
- Shared item: all consumables use one registered item
vantagetaczcompat:consumable, distinguished by NBTConsumableId - Resource loading: reuses TaCZ
JsonDataManager/LazyJsonDataManager, supports F3+T hot-reload - Durability modes:
proportional(default): consumes durability proportional to missing health/armor — suited for healing itemsfixed: 1 durability per use, uses = durability value — suited for wound-clearing items
- Use precondition checks:
- Proportional mode (healing): blocks use if health is full — shows "Health Full"
- Fixed mode (wound clearing): blocks use if no matching wound — shows "No wound detected"
- Use restrictions (during animation): no hotbar switching, no inventory (E), no scroll-wheel, no drop (Q), no swap (F), no TaCZ firing; ESC pause menu still works
- Slowdown II applied for the animation duration + extra ticks
- Cancel: press R (rebindable) during use to cancel — no effects applied
- Cancel key hint: HUD shows "Press R to Cancel" (or mouse button icon + "Cancel" if rebound to mouse)
- Draw sound: manually plays TaCZ gun draw sound after use ends (main hand item didn't switch, so TaCZ's native draw doesn't trigger)
Consumable Wheel UI
- Press B (rebindable) to open a ToolBelt-style radial wheel
- Inner radius 20px, outer radius 100px, smooth QUADS-rendered sectors
- Scans inventory and aggregates consumables (same type merged, highest-durability stack used)
- Center shows selected item name, hover shows tooltip
- Release the key to use the selected consumable, right-click to close
- Opening animation with radius gradient
First-Person Consumable Rendering
- Intercepts
RenderHandEventat HIGHEST priority (before TaCZ'sFirstPersonRenderHandler) - Uses TaCZ's
renderFirstPersonPoseStack (screen coordinate system) — model follows view rotation - Applies
AnimateGeoItemRenderer.applyFirstPersonPositioningTransform()for models withidle_viewbone - Applies
camerabone quaternion for camera shake animation - Renders player arms bound to
lefthand_pos/righthand_posbones using player skin texture - Uses
event.getPackedLight()instead of hard-coded brightness — respects environment lighting - 2D inventory icons rendered by dedicated BEWLR (
ConsumableItemRenderer) for GUI / third-person / ground contexts
Consumable Use HUD
- Crosshair-below layout with 3 rows:
- Row 1: progress bar (100×5, white fill, semi-transparent black background)
- Row 2: item name (left) + remaining seconds (right)
- Row 3: cancel hint — mouse button icon + "Cancel" if rebound to mouse, or "Press X to Cancel" if keyboard
Mouse Button Icons
- 5 icons (left/right/middle/side1/side2) from sprite sheet
textures/gui/mouse_buttons.png - Each source icon 67×67px, scaled to 16×16 for HUD display
- Used in cancel hint when the cancel key is a mouse button
Default Consumables Pack
- Renamed extension pack from
migrated_testpack(namespacetestpack) tovtc_default_consumable(namespacevantagetaczcompat) - 7 default consumables included:
- Bandage (fixed, 4 uses): clears one wound layer
- Painkiller (proportional, 5 durability): painkiller effect for 5 minutes
- Stim (fixed, 1 use): ParCool inexhaustible effect for 9s
- Syringe (proportional, 1 durability): Regeneration for 5s
- Medical Kit (proportional, 8 durability): Regeneration for 5s
- Tourniquet (fixed, 4 uses): clears one bleeding layer
- M2 IM Injection (fixed, 1 use): Speed effect for 5 minutes
- Each consumable ships with 3D geo model, use animation, model texture, and 2D slot texture
New Armor Mechanic (TaCZ Bullet Damage)
- TaCZ bullet damage now splits by
armor_ignore:- Piercing portion (damage × armorIgnore) → direct health damage
- Non-piercing portion → consumes corresponding body-part armor durability (×
armorDurabilityMultiplier, default 4×) - Overflow beyond armor durability → health damage
- Armor durability exhausted but not destroyed (protected by Mixin) — protection gone, reserved for repair consumables
- Body part → armor slot mapping: HEAD→helmet, ABDOMEN/arms→chestplate, legs→leggings
- Only affects TaCZ bullet damage; other damage types keep vanilla armor reduction
Consumable Armor Repair
armor_repair_typesupports"helmet"/"chest"/ null- Repair permanently reduces armor max durability cap by
armor_max_durability_reduction_percent(NBTvantagetaczcompat.max_damage_reduction)
Stamina System (Updated)
- Sprint drains
staminaSprintDrain(default 0.2/tick), regeneratesstaminaRegen(default 0.3/tick) afterstaminaRegenDelay(default 20 ticks) - Must have ≥25 stamina to start sprinting (won't interrupt mid-sprint)
- Fatigued state when stamina ≤0 or <20 and not sprinting — blocks new sprint until >20
- Jumping costs 10, sliding costs 20
stamina_restore: instantly restores stamina to fullstamina_infinite/stamina_finite: toggle infinite stamina- Vanilla hunger locked to 20 / saturation 5.0 (requires HungerStrike)
- Aiming a TaCZ gun cancels sprint
Slide Mechanic (WIP, disabled by default)
- Press V (rebindable) while sprinting ≥5 ticks to slide
- 30-tick linear speed decay, crouching hitbox, locked direction
- Slide-jump gives forward boost
- 2s cooldown
- Enable via
enableSlidein config
Wound System (Updated)
- Body-part detection uses hit coordinates + rotation matrix + local AABB — does NOT use TaCZ's
isHeadShot() - 7 body parts: HEAD (y 1.5-2.0), ABDOMEN (y 0.8-1.5), LEFT_ARM/RIGHT_ARM, LEFT_LEG/RIGHT_LEG, NONE
- Head (20% chance): Heavy Wound — max health -10% of base cap (not flat -10 HP)
- Abdomen (20% chance): Abdomen Wound — max health -10% of base cap
- Arms (30% chance): Bleeding — 1 damage every ~6s, up to 4 layers, stops at HP ≤1
- Legs (20% chance): Fracture — -15% speed per leg, max -30% (both legs)
- All wounds permanent until treated or death
- Configurable trigger chances and damage multipliers per body part
Painkiller System (Updated)
- Suppresses bleeding damage and fracture slowdowns (HUD icons remain visible)
- Fractures can still stack while suppressed (recorded as suppressed amplifier)
- Comedown: 1s nausea + scream sound if heavy/abdomen wounds present on expiry
Fall Fracture
- Falling ≥5 blocks triggers per-leg independent fracture check
- Base 50% + 10% per additional block, each leg rolled separately
- Scream sound on trigger
Player Health
- Base health = 20 +
playerBaseHealthBonus(default 30 = 50 HP / 25 hearts) - Fully restored on first join and respawn
- Vanilla hunger disabled (HungerStrike)
HUD Overlays
- Health overlay: avatar + health bar (80×5) + health % + 4 armor durability icons (9×9) + oxygen bar; hides vanilla health/hunger/armor/experience/jump bar/potion icons
- Stamina overlay: stamina bar (80×5) above hotbar, hides when full and not sprinting, turns red below 20
- Effect overlay: 9×9 effect status blocks above hotbar with smooth progress fill
- Consumable use overlay: progress bar + item name + remaining time + cancel hint below crosshair
AI Entities
- Soldier (
soldier): 3-state AI (Patrol → Alert → Combat), 30 HP, random SMG single-fire, squad aggro sharing within 20 blocks, drops depleted gun on death - Sniper (
sniper): immobilized soldier, random sniper rifle, 3~6s shot interval, aims at legs - Configurable AI parameters: health, patrol radius, sight range, hit probability, shoot cooldown, reload time, etc.
- Configurable gun blacklist for AI (default:
tacz:timeless50,tacz:ai_awp,tacz:m107,tacz:m95) - Spawn eggs in creative tab
Localization
- English (US)
- Chinese (Simplified)
Technical
- 6 Mixin classes (2 common + 1 client in common json + 3 client in client json), registered via JAR manifest
MixinConfigs - Capability-based player data (stamina, slide, painkiller suppression, weight threshold bonus)
- Server-authoritative consumable use sessions
- 4 network packets (Slide, StaminaSync, ConsumableUse, ConsumableWheelUse)
- TaCZ extension pack auto-exported to
.minecraft/tacz/vtc_default_consumable/on first launch
Комментарии
Загружаем…