Skip to content
Goety Owned Null Guard Fix

Quick rating

Community listing page, reviews may not be monitored by the author.

Goety Owned Null Guard Fix

No reviews yet

A tiny Forge 1.20.1 patch that fixes Goety summons crashing with a "Ticking entity" NPE when they take damage.

Mod Loaders
Minecraft

About

Description

# Goety Owned Null Guard Fix

A tiny (~3KB) Forge 1.20.1 patch that fixes a recurring crash from Goety summons.

## The Problem
When Goety summons such as Inferno or ZombieServant take damage, the game can
crash with a "Ticking entity" NullPointerException. It happens most often in the
Nether, with multiple same-type summons nearby, or with ownerless summons. The
crash stack always points at Owned.java:186 -> Entity.java:2236.

## Root Cause
Goety's Owned.isAlliedTo(Entity) forwards a null entity to vanilla
Entity.isAlliedTo. The hurt-revenge target AI passes a cleared lastHurtByMob()
value while propagating damage to nearby same-type mobs, and vanilla 1.20.1
dereferences the argument without a null check (p.getTeam()) -> NPE.

## The Fix
A mixin injects a null guard at the entry of Owned.isAlliedTo: it returns false
for a null argument (a null entity can never be an ally). No gameplay balance
and no AI behaviour changes - it is a pure null-safety fix.

## Compatibility
- Requires Forge 1.20.1 (47.x) and Goety 2.5.56+.
- Works alongside RevelationFix, Goety: Revelation and all Goety addons.
- Install on both the client and the server. For an integrated server, the
  host must have the mod installed.
- Contains only a mixin; no Goety code is included. MIT licensed. Remove the
  jar to uninstall.

Thanks to Polarice3 for Goety (https://github.com/Polarice3/Goety-2).

Null Guard Fix for Goety

A small patch (about 3KB) that fixes frequent crashes caused by Goety summons.

Problem

When a Goety summon (such as a Hellfire or a zombie servant) takes damage, the game may crash due to a "timing entity" null pointer exception. This happens most often when multiple summons of the same type are nearby, or when there are ownerless summons. The crash stack always points to Owned.java:186 -> Entity.java:2236.

Root Cause

Goety's Owned.isAlliedTo(Entity) forwards a null entity to vanilla Entity.isAlliedTo. The damage revenge target AI passes an already-cleared lastHurtByMob() value when spreading damage to nearby mobs of the same type, and vanilla 1.20.1 dereferences the parameter without a null check (p.getTeam()) -> causing an NPE.

Fix

A null guard was injected at the entry point of Owned.isAlliedTo: it returns false for a null argument (a null entity can never be an ally). It does not affect game balance and does not change AI behavior — it is purely a null-safety fix.

Compatibility

  • Can be used together with RevelationFix, Goety: Revelation, and all Goety addons.
  • Please install it on both the client and the server. For integrated servers, the host must install this mod.
  • Contains only one mixin; does not include any Goety code. Licensed under MIT. Please remove the jar file to uninstall.

Thanks to Polarice3 for Goety (https://github.com/Polarice3/Goety-2).