Crash Between Galaticraft or Something and HBM's Nuclear tech when irradiating an entity?
Shibva opened this issue ยท 13 comments
I was going to start a new adventure by adding HBM to Gregtech; Ne Horizons and plugged the mod in and I got this nasty discovery that the game will undergo an OutOfBounds -102 error every time an entity either becomes irradiated or is effected with the Contaminated potion effect
I think it would be best for both ends to discuss this to resolve any future conflict that this might have
the link to the crash reports and the other discussion can be found in the following link:
GTNewHorizons/GT-New-Horizons-Modpack#8108
Probably a potion conflict, either change the potion ID or try to use a conflict mod, I do believe there is one for potion IDs.
none of the Potion Ids are conflicting acording to anti-id conflict
if it was the game would indicate that
occupiedIDs.txt
heres is all the potion ids that are occupied if it helps
heres is also the last crash I had
Description: Ticking entity
java.lang.ArrayIndexOutOfBoundsException: -102
at net.minecraft.potion.PotionEffect.func_76455_a(PotionEffect.java:105)
at net.minecraft.entity.EntityLivingBase.func_70679_bo(EntityLivingBase.java:524)
at net.minecraft.entity.EntityLivingBase.func_70030_z(EntityLivingBase.java:293)
at net.minecraft.entity.EntityLiving.func_70030_z(EntityLiving.java:214)
at net.minecraft.entity.Entity.func_70071_h_(Entity.java:318)
at net.minecraft.entity.EntityLivingBase.func_70071_h_(EntityLivingBase.java:1561)
at net.minecraft.entity.EntityLiving.func_70071_h_(EntityLiving.java:272)
at net.minecraft.world.World.func_72866_a(World.java:2070)
at net.minecraft.world.World.func_72870_g(World.java:2034)
at net.minecraft.world.World.func_72939_s(World.java:1887)
at net.minecraft.client.Minecraft.func_71407_l(Minecraft.java:2006)
at net.minecraft.client.Minecraft.func_71411_J(Minecraft.java:973)
at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:898)
at net.minecraft.client.main.Main.main(SourceFile:148)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
A detailed walkthrough of the error, its code path and all known details is as follows:
-- Head --
Stacktrace:
at net.minecraft.potion.PotionEffect.func_76455_a(PotionEffect.java:105)
at net.minecraft.entity.EntityLivingBase.func_70679_bo(EntityLivingBase.java:524)
at net.minecraft.entity.EntityLivingBase.func_70030_z(EntityLivingBase.java:293)
at net.minecraft.entity.EntityLiving.func_70030_z(EntityLiving.java:214)
at net.minecraft.entity.Entity.func_70071_h_(Entity.java:318)
at net.minecraft.entity.EntityLivingBase.func_70071_h_(EntityLivingBase.java:1561)
at net.minecraft.entity.EntityLiving.func_70071_h_(EntityLiving.java:272)
at net.minecraft.world.World.func_72866_a(World.java:2070)
at net.minecraft.world.World.func_72870_g(World.java:2034)
at net.minecraft.world.World.func_72939_s(World.java:1887)
-- Entity being ticked --
Details:
Entity Type: Villager (net.minecraft.entity.passive.EntityVillager)
Entity ID: 636
Entity Name: Villager
Entity's Exact location: 858.16, 101.00, 156.50
Entity's Block location: World: (858,101,156), Chunk: (at 10,6,12 in 53,9; contains blocks 848,0,144 to 863,255,159), Region: (1,0; contains chunks 32,0 to 63,31, blocks 512,0,0 to 1023,255,511)
Entity's Momentum: 0.00, -0.08, 0.00
Stacktrace:
at net.minecraft.client.Minecraft.func_71407_l(Minecraft.java:2006)****
seems like vanilla doesn't like potion IDs over 127. I'm certain there is a mod somewhere that extends the limit to 255, but I can't remember its name...
your thinking of Extended Potions
yeah let me try adding that in, dint know that was not in the pack, maybe thats the issue
yup, that seems to be it
Guessing Vanilla just doesn't like negative potion IDs, but AntiIDConflict parses them correctly
there seems to be enough "holes" in the potion id list to allows for HBM potions to be allocated... if the config isn't dumb
thats the thing, I noticed some effects dont get picked up by anti-Id, the only example is the effects form Thaumcraft and its addons
NTM automatically extends the potion array to 256 if it is smaller, that wouldn't be an issue. It's weird though that the index used is negative, that usually indicates an overflow if a smaller data type is used somewhere during the potion handling process, but i cant find any instance of that happening. Have you tried removing a mod that adds potion effects so the total number is below 128?
found it, the section 08_potion_effects
has the potion ids.
Also, guessing that the problem is in Vanilla code and not your code.
Just found it, EntityLivingBase uses the DataWatcher to send potion information to the client, the potion ID is sent as a byte
which only has a resolution of 2^8...ending at 127 and looping back to -128.
Unless you find a mod that uses ASM or similar to change the way minecraft itself handles potions, you're out of luck.
You mean a mod like Potion ID Helper? @HbmMods