Petting - Tame any mob!

Pet mobs and have them become protective companions that follow you, offering support and assistance during your adventures.
Back to Files

petting-5.0.0-neoforge-26.3.jar

File namepetting-5.0.0-neoforge-26.3.jar
Uploader
yigitguvenyigitguven
Uploaded
Oct 13, 2026
Downloads
8
Size
323.2 KB
Mod Loaders
NeoForge
File ID
9167535
Type
R
Release
Supported game versions
  • 26.3

Curse Maven Snippet

NeoForge

implementation "curse.maven:petting-1083170:9167535"

Learn more about Curse Maven

What's new

Added

  • Ported mod to Minecraft 26.3 and NeoForge.
  • Modernized mod architecture and resource pipeline.
  • Added comprehensive update.json for Forge and NeoForge update checker.
  • Added configurable friendly fire settings ([friendlyFire] in server config):
    • ownerCanAttackPets: Configures whether owners can attack and damage their own pets (default: true). Pets will still never attack or target their owner under any circumstances.
    • petsCanAttackPets: Configures whether pets belonging to the same owner can target or attack each other (default: false).
  • Streamlined and modernized server configuration ([behavior] and [collar]):
    • Consolidated tactical AI settings to eliminate duplication between global configs and per-collar settings.
    • Removed obsolete fields (petsDefendOwner, petsAttackOwnerTarget, petsRetaliate, teleportDistance) from [behavior].
    • Moved defaultCombatMode under [collar] and provided comprehensive collar defaults and slider boundary controls (defaultCombatMode, defaultFollowDistance, minFollowDistance, maxFollowDistance, defaultTeleportDistance, minTeleportDistance, maxTeleportDistance, defaultTeleportEnabled, defaultPreferRangedAttack, defaultDefendOtherPets, defaultRetaliateWhenHurt).
    • Added full translation keys and descriptive tooltips for NeoForge's in-game config UI (ConfigurationSectionScreen).
  • Added universal Pet Sitting system with dedicated keybind:
    • Sit / Stand Keybind (key.petting.toggle_pet_sit): Defaults to Right-Click (MOUSE_BUTTON_RIGHT). Remappable in Controls -> Key Binds -> Petting.
    • Context-aware interaction: Automatically prioritizes item interactions (equipping collars, dyeing collars, feeding treats, naming with name tags, leashing, shearing) so held items function as expected.
    • Vanilla TamableAnimal pets (wolves, cats) visually transition into sitting poses when sitting.
    • Boat/Minecart Sitting Pose for Humanoid & Illager Pets: When ordered to sit, humanoid mobs (Zombies, Husks, Drowned, Zombie Villagers, Skeletons, Strays, Wither Skeletons, Bogged, Piglins, Piglin Brutes, Zombified Piglins, Endermen, Players) and Illagers (Pillagers, Vindicators, Evokers, Illusioners) adopt their iconic boat / minecart riding shape with outstretched legs and passenger arm poses. When stationed on the ground, their rendered body and floating nametag are seamlessly lowered so they sit realistically on the ground rather than floating in mid-air.
    • Special Animal Sitting Support: Animals with sitting poses (such as Foxes, Pandas, and Camels) seamlessly trigger their sitting animations when ordered to sit.
    • Hovering physics for flying pets: Flying pets (Allays, Ghasts, Phantoms, Bats, Bees, Parrots, Blazes, Withers, Vexes, etc.) hover completely motionless in mid-air right where commanded to sit.
    • Stillness physics for aquatic pets: Swimming pets (and any pet submerged in water) remain completely stationary without sinking, floating up, or drifting in currents.
    • Walking pets: Remain firmly stationed on the ground like a sitting wolf in vanilla Minecraft.
    • Sitting Nametag Dimming (Sneak Visuals): When a named pet is sitting, its floating nametag text becomes darker and translucent (and suppresses see-through through walls) just like a crouching/sneaking player in vanilla Minecraft.
    • Combat forgiveness on sit: Ordering a pet to sit immediately clears attack targets, erases anger, halts attack goals, and suspends following and teleporting.
    • Fully configurable in server configuration ([behavior]):
      • enablePetSitting: Enable or disable the pet sitting mechanic globally (default: true).
      • enablePetInventory: Configures whether the entire pet inventory, equipment, and riding system is enabled (default: true). When set to false, pets operate purely on default configuration settings without collar/equipment support or riding.
      • forgiveAttacksOnSit: Configures whether sitting immediately clears hostilities and stops combat (default: true).
      • flyingPetsHoverWhenSitting: Configures whether flying pets hover stationary in mid-air (default: true).
      • swimmingPetsStayStillWhenSitting: Configures whether aquatic pets remain stationary in water (default: true).
      • hideTamedBossBars: Configures whether boss health bars for tamed pets (e.g. Wither, Ender Dragon, or modded boss pets) are hidden from players' screens (default: true).
      • tamedMonstersPreventSleep: Configures whether tamed monster pets (such as Zombies, Skeletons, Withers, etc.) nearby prevent players from sleeping like vanilla monsters do (default: false / players can sleep).
  • Enhanced universal entity safety, summoned minion affiliation, and impact protections:
    • Universal Minion & Summon Affiliation: Summoned minions and entities created by tamed pets (such as Vexes summoned by an Evoker pet, or minions spawned by modded summoners/necromancers) now automatically trace root ownership back to the owner and become recognized allies. Minions will never target or damage their owner or fellow pets.
    • Ender Dragon Impact & Knockback Immunity: Fixed Ender Dragon wing collision (entity.push) violently launching its owner into the air, and eliminated head/neck contact damage against owners and fellow pets. Dragon AI phases properly respect the owner as an ally.
    • Universal Ally & Collision Damage Filtering: Deep integration into Entity.considersEntityAsAlly, Entity.doTeamsAllowDamage, and LivingEntity.canAttack ensures all vanilla and modded contact damage, spells, and traps (such as Evoker Fangs, Slime/Magma Cube contact, and Pufferfish poison) treat owners and allied pets as allies.
  • Added pet inventory side navigation tabs:
    • Added tab strip positioned seamlessly along the left container edge following vanilla recipe book tab conventions.
    • Pet Inventory (Home) tab: Displays pet equipment, entity model, and player inventory slots.
    • Collar Settings tab: Appears dynamically in the sidebar only when the pet is wearing a collar.
    • Riding Settings tab: Appears dynamically in the sidebar only when a saddle is equipped on the pet. Automatically returns to Home if the saddle is removed.
    • Automatically isolates slot rendering and mouse events to the Home tab so invisible slots are never highlighted or clicked in secondary tabs.
    • Added dedicated keybind support (J key / configurable via Controls) to open pet inventory, decoupled from default shift right-click.
  • Added Collar Settings GUI scene with persistent data storage:
    • Settings are stored directly on the collar item stack via data components (petting:collar_settings), preserving configuration across un-equipping and transfers between pets.
    • Aggressiveness Button: Cycles between 5 distinct combat and station modes with dynamic real-time tactics summary:
      • Passive Mode: Pet never initiates combat or attacks; strictly follows owner.
      • Defensive Mode: Pet follows owner and fights back when the owner or fellow pets are attacked.
      • Aggressive Mode: Pet follows owner, attacks targets the owner strikes, and defends the owner.
      • Wander Mode: Pet remains anchored to its stationed location and wanders freely within its configured wander radius without following the owner away or teleporting. Fights back if retaliate is enabled.
      • Guard Mode: Pet stays anchored to its stationed post, patrols its configured patrol radius, and actively seeks out and eliminates untamed hostile monsters (Enemy). Retains a leash distance to never chase enemies far into the wilderness, returning back to guard its station once threats are eliminated.
    • Dynamic Distance / Radius Slider: Automatically switches label and tooltip according to the active collar mode:
      • Displays "Follow Distance: X blocks" in Passive, Defensive, and Aggressive modes.
      • Displays "Wander Radius: X blocks" in Wander mode.
      • Displays "Patrol Radius: X blocks" in Guard mode.
    • Intelligent Station Anchoring: Leashing and leading a pet in Wander or Guard mode, or riding it to a new location, dynamically re-anchors its station post right where it was unleashed or dismounted.
    • Teleport Distance Slider: Configures distance before the pet teleports to catch up (active in following modes).
    • Teleport Toggle: Toggles catch-up teleportation ON/OFF.
    • Ranged Toggle: Toggles preference for ranged attacks (keeping distance and firing bows/crossbows when armed).
    • Defend Pets Toggle: Toggles whether pet defends fellow pets belonging to the same owner.
    • Retaliate Toggle: Toggles whether pet counter-attacks when directly taking damage.
    • Reset Defaults: Resets all collar options to server configuration defaults.
  • Added universal Pet Riding system with streamlined UI and reliable dismounting:
    • Ride Keybind (key.petting.ride_pet): Defaults to R (KEY_R). Remappable in Controls -> Key Binds -> Petting. Pressing while looking at an owned pet mounts it; pressing while riding provides an instant dismount.
    • Custom Saddle Slot in Main Pet Inventory (Home Tab):
      • Located directly alongside the pet's equipment slots in the primary pet inventory UI.
      • Automatically excluded for mobs that already have default saddle slots in vanilla (AbstractHorse - Horses, Donkeys, Mules, Skeleton/Zombie Horses, Camels).
      • Saddled (Controlled): Equipping a saddle enables full player steering, 3D flight/swim controls, and unlocks the Riding Settings sidebar tab.
      • Unsaddled (Uncontrolled): Players can mount allowed pets without a saddle if enabled by server configs, but cannot steer them.
      • Saddles drop on the ground if a pet dies or is untamed.
    • Redesigned Riding Settings Screen:
      • Completely removed player inventory slots and visual clutter from the riding tab.
      • Features a clean, dedicated full-panel settings screen matching the collar dashboard, displaying the equipped saddle icon and pet header.
      • Two clean, full-width toggle buttons: Attack on Click and Auto-Attack Hostiles.
      • Embedded Controls Guide panel detailing mobility-specific navigation and keybindings for walking, flying, and swimming pets.
    • Mob-Specific 3D Controls (respecting player's configured keybindings):
      • Walking Pets: Steer with movement keys (WASD), jump with Jump key, sprint for faster movement, dismount with Sneak. Includes step-height assist (1.06 blocks) to traverse single-block inclines smoothly.
      • Flying Pets: Full 3D aerial navigation. WASD for horizontal movement, Jump ascends, Sneak descends, and releasing keys hovers motionless in mid-air. Sneaking in the air descends rather than dismounting; upon reaching ground level or landing within 1.8 blocks of the ground, holding or pressing Sneak reliably and immediately dismounts the rider (resolving dismount issues when riding flying Withers).
      • Aquatic / Swimming Pets: Full 3D underwater navigation in water (WASD to swim, Jump to surface, Sneak to dive, with automatic Water Breathing for the rider). Outside of water, aquatic pets cannot fly and crawl along the ground.
    • Riding Combat & Attacks:
      • Attack on Left-Click: Pressing the Attack key while riding commands the ridden pet to attack in the player's crosshair direction.
        • Melee Pets (Zombies, Iron Golems, Spiders, Wolves, etc.): Swings weapon/arms and deals direct melee damage to targets in front.
        • Ranged Pets (Skeletons, Strays, or any pet holding a Bow/Crossbow): Launches arrows.
        • Ghasts: Launches explosive LargeFireballs.
        • Blazes: Shoots SmallFireballs.
        • Ender Dragons: Shoots DragonFireballs.
        • Withers: Shoots explosive WitherSkulls.
      • Auto-Attack Hostiles: Toggleable setting in the Riding tab UI to allow ridden pets to automatically detect and attack nearby hostile monsters.
    • Server Configuration ([riding]):
      • enableRiding: Toggle pet riding globally (default: true).
      • allowRidingWithoutSaddle: Allow riding uncontrolled pets without a saddle (default: true).
      • riddenPetsAttackOnClick: Enable attacking on left-click while riding (default: true).
      • flyingPetAscentSpeed, flyingPetDescentSpeed, flyingPetSpeedMultiplier: Tune ascent, descent, and horizontal flight speeds.
      • swimmingPetSpeedMultiplier: Tune underwater swim speed.
      • riddenAttackCooldownTicks: Tune attack cooldown between ridden strikes (default: 15 ticks).
  • Added new Collar items and all 16 Minecraft dye color variants:
    • Default variant is the Red Collar (collar), along with 15 colored variants (white_collar, orange_collar, magenta_collar, light_blue_collar, yellow_collar, lime_collar, pink_collar, gray_collar, light_gray_collar, cyan_collar, purple_collar, blue_collar, brown_collar, green_collar, black_collar).
    • Each variant features custom 16x16 pixel art with matched lighting, shading, and the iconic golden bell/buckle.
    • All 16 colored collars can be crafted directly from scratch using leather, the respective dye in the center, and a gold nugget (LLL / LDL / G ). Any existing collar can also be redyed to any color using shapeless crafting with any vanilla dye.
    • Owners can dye an equipped pet collar in real time by right-clicking their pet with any dye.
    • Any collar variant can be equipped via the pet inventory GUI or by right-clicking a tamed pet directly in the world.
    • Added dedicated universal Collar equipment slot to all pet inventory GUIs regardless of whether the mob has native equipment slots.
    • Added dynamic 3D worn collar entity rendering (PetCollarLayer):
      • Automatically detects the head and neck position across any pet model (vanilla and modded mobs).
      • Renders a 3D colored collar band wrapped around the pet's neck right below the head with matching dye color and an iconic golden buckle on the front.
    • Collars are safely dropped on the ground if the pet dies or is untamed.
    • Collar Bed & Cushion Binding and Respawn System:
      • Right-clicking any Bed (BlockTags.BEDS) or Cushion (vanilla cushion entity/block or modded cushions) while holding a collar binds the collar to that location.
      • Successfully binding a collar grants it an enchanted shimmer/glint visual both in inventory screens and on the worn 3D pet model, and adds a purple location tooltip ("Bound to Bed / Cushion [x, y, z]").
      • When a tamed pet wearing a bound collar dies, death is canceled and the pet instantly respawns safely seated on its bound bed or cushion with full health, negative status effects and fire cleared, accompanied by Totem of Undying visual particles and sound effects.
      • If the bound bed or cushion is destroyed or broken, the pet will not respawn and will experience normal death (dropping its collar/saddle and notifying the owner).
      • Fully configurable via enableCollarRespawn under [collar] in server config (default: true).
  • Configurable Pet Death Messages & Granular Feedback System:
    • Added enablePetDeathMessages in server configuration ([behavior]) to control whether the server notifies pet owners when pets die or respawn (default: true).
    • Extended client configuration ([feedback]) with granular controls for all feedback messages:
      • Default Disabled Feedback: All client-side feedback messages are now disabled (false) by default to keep chat clean.
      • Replaced Blanket Toggles: Removed blanket enablePositiveFeedback and enableNegativeFeedback toggles in favor of precise, individual message toggles.
      • Granular Positive Toggles: Added individual options for enableTamedSuccessFeedback, enablePetHealedFeedback, enablePetSittingFeedback, enablePetStandingFeedback, enableCollarBoundFeedback, and enableMountControlledFeedback.
      • Granular Negative Toggles: Added individual options for enableTamingFailedFeedback, enableTooHealthyFeedback, enableAlreadyVanillaTamedFeedback, enableAlreadyTamedOtherFeedback, enablePetFullHealthFeedback, enablePetLimitReachedFeedback, enableSaddleRequiredFeedback, and enableMountUncontrolledFeedback.
      • Granular Death & Respawn Toggles: enablePetDeathMessages (general death toggle) along with granular options for enablePetDiedFeedback, enablePetRespawnedFeedback, and enablePetRespawnFailedFeedback.

Fixed

  • Inverted Left / Right Riding Controls:
    • Corrected strafe direction vector calculation so pressing Right (D) steers right and pressing Left (A) steers left.
  • Strict Pet Riding Controls & Autonomous Movement Suppression:
    • Ridden pets equipped with a saddle now strictly follow the player's steering inputs. Mob pathfinding (navigation.stop()), target acquisition, autonomous AI goals (Goal.Flag.MOVE, JUMP, LOOK), and MoveControl/LookControl are completely suppressed while mounted.
    • When stationary (no movement keys pressed), pets remain completely still with zero autonomous drifting or wandering.
  • Strict View and Rotation Synchronization:
    • Synced the ridden pet's body yaw, head yaw, and head pitch strictly to the rider's view direction in real time on both server and client.
    • Render state modifiers and post-tick synchronization ensure the pet's body and head strictly face the player's crosshair with zero visual jitter or head deviation.
  • Flying & Aquatic Pet Ground Dismount:
    • Fixed players getting stuck riding flying pets (such as the Wither Boss) or swimming pets when descending with Sneak to the ground.
    • Sneaking in mid-air smoothly descends/dives, and as soon as the pet touches the ground or cannot descend further, pressing or holding Sneak immediately and reliably dismounts the rider.
  • Flying Pet Hovering & Motion Freezing:
    • Fixed an issue where flying pets (such as the Wither Boss, Ghasts, Blazes, etc.) continuously fell to the ground when sitting.
    • Resolved FlyingMoveControl resetting noGravity to false every tick during idling and downward drag in WitherBoss.aiStep() overriding goal selector velocity zeroing.
    • Added pre-tick and post-tick entity motion freezing on both server and client, locking sitting flying and swimming pets stationary in place with zero falling, drift, or render jitter.
    • Automatically clears and suppresses Wither side head target locks (setAlternativeTarget) so sitting Wither pets do not fire skulls while resting.
    • Expanded interaction range check for sitting and inventory toggles from 8 blocks to 16 blocks (with interaction range checks) so players can easily command tall and floating mobs.
  • Screen-Safe Clamped Tooltips (ClampedTooltipPositioner):
    • Implemented custom tooltip clamping to prevent tooltips from extending beyond the top, bottom, or sides of the viewport on any GUI scale or resolution.
    • Fixed combat mode tooltips getting cut off above the screen edge when hovering near the top of the GUI.
  • Button Text Overflow:
    • Shortened collar toggle button labels (Ranged: ON/OFF and Defend: ON/OFF) to fit cleanly within 76px button widths without text clipping.
  • Dynamic Combat Mode Tooltips:
    • Replaced long static mode descriptions with concise 3-line tooltips displaying mode behavior and real-time active tactical toggle states.
  • Ranged Pet Combat AI (PetRangedAttackGoal):
    • Added dedicated bow and crossbow combat AI for armed pets when Ranged is enabled, maintaining optimal firing distance and shooting projectiles.
  • Pet Combat AI & Responsiveness:
    • Resolved pets being overly passive when built-in hostility was disabled; pets now actively fight their owner's target, defend their owner, and defend themselves.
    • Reordered goal priorities so attack goals take precedence over follow-owner movement during battle, and prevented follow AI from breaking off active combat unless the owner exceeds teleport range.
    • Upgraded target acquisition to use combat targeting without strict raycast line-of-sight interruptions.
    • Separated hurt timestamps in PetDefendOwnerTargetGoal to eliminate timestamp collisions between owner-defense and self-defense.
    • Synced target assignments to Brain memory for brain-driven mobs like Wardens so their attack routines execute properly.
    • Handled ranged mobs (e.g. skeletons holding bows) in PetMeleeAttackGoal so they can freely shoot with their bow rather than charging in for melee punches.
  • Tamed Monster Pets Sleep Interference:
    • Fixed an issue where tamed monster pets (such as Zombies, Skeletons, Withers, etc.) sitting or standing nearby prevented players from sleeping with the vanilla "You may not rest now, there are monsters nearby" warning.
    • Implemented MonsterMixin to override isPreventingPlayerRest for tamed friendly monster pets while strictly preserving vanilla sleep denial if an untamed hostile monster is nearby or if a pet is actively attacking the player.
    • Added configurable toggle (tamedMonstersPreventSleep in server config [behavior], default: false) so servers can choose whether tamed monster pets prevent sleep or allow players to sleep peacefully nearby.
  • Collar Respawn Instant Relocation & Desync Fix:
    • Fixed a client-server synchronization bug where a pet dying with a bound collar would remain sitting at the death location on the client instead of appearing at its bed/cushion.
    • Resolved ChunkMap entity tracking retaining stale client pairings on same-dimension teleports by cycling removeEntity and addEntity on the chunk source, immediately removing the entity from the death location and re-adding it at the bound bed coordinates for all tracking players.
    • Stopped mob pathfinding navigation and cleared residual post-damage knockback velocity (syncVelocity = false, setDeltaMovement(Vec3.ZERO)) to ensure the respawned pet sits directly and securely on its bed or cushion without sliding or snapping.
  • Friendly Fire & Config Enforcement Fixes:
    • Fixed an issue where enabling ownerCanAttackPets did not allow owners to damage their pets because pet-vs-pet friendly fire checks and ally mixins incorrectly treated the owner and pet relationship as fellow pets.
    • Introduced arePetsOfSameOwner to cleanly distinguish fellow pets belonging to the same owner from the owner-pet relationship, allowing owners to strike or shoot their pets when ownerCanAttackPets is enabled while keeping pets completely peaceful toward their owner.
    • Fixed petsCanAttackPets targeting being prematurely blocked in LivingChangeTargetEvent and canAttack mixins.
    • Enforced enableCollarSlot config check when attempting to equip collars by right-clicking in the world.
    • Enforced enablePetRiding, riding whitelist/blacklist, and saddle requirements in EntityMountEvent to prevent unauthorized mounting.
    • Added server-side validation for riddenPetsAttackOnClick in RiddenPetAttackPayload.

Full Changelog: https://github.com/yigit-guven/Petting/compare/4.1.7...5.0.0

This mod has no additional files