Attachment file type: archive
Modlogs.zip
3.67 MB
also, this mech had a hyper laser, which, as it seems to me, exploded on the first malfunction. But this is not accurate, I could have missed the first message about the fail.
no, the laser exploded in a regular manner, it already had a malfunction
Suspicious Chairwoman Alekto04/14/2020
volatile components are an ammo explosion to the games logic despite not being ammo that exploded
Grey W04/14/2020
but the laser was already exploded, and the hand in which he was fit is missing
FrostRaptor04/14/2020
Looks like a fairly nasty stack-trace around that time
2020-04-14T20:31:02 FYLS [ERROR] System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.NullReferenceException: Object reference not set to an instance of an object
at (wrapper dynamic-method) BattleTech.Mech.DamageLocation_Patch5(object,int,BattleTech.WeaponHitInfo,BattleTech.ArmorLocation,BattleTech.Weapon,single,single,int,BattleTech.AttackImpactQuality,BattleTech.DamageType)
at (wrapper managed-to-native) System.Reflection.MonoMethod.InternalInvoke(System.Reflection.MonoMethod,object,object[],System.Exception&)
at System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00032] in :0
Attachment file type: document
message.txt
2.55 KB
--- End of inner exception stack trace ---
at System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00048] in :0
at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) [0x00000] in :0
at Harmony.Traverse.GetValue () [0x00078] in <1b23547042994e96b8b6361dbe3791d9>:0
at Harmony.Traverse.GetValue[T] () [0x00001] in <1b23547042994e96b8b6361dbe3791d9>:0
at MechEngineer.Features.ComponentExplosions.MechPrivateExtensions.DamageLocation (BattleTech.Mech mech, System.Int32 originalHitLoc, BattleTech.WeaponHitInfo hitInfo, BattleTech.ArmorLocation aLoc, BattleTech.Weapon weapon, System.Single totalArmorDamage, System.Single directStructureDamage, System.Int32 hitIndex, BattleTech.AttackImpactQuality impactQuality, BattleTech.DamageType damageType) [0x00069] in :0
at MechEngineer.Features.ComponentExplosions.ComponentExplosionsFeature.CheckForExplosion (BattleTech.MechComponent component, BattleTech.WeaponHitInfo hitInfo, BattleTech.ComponentDamageLevel damageLevel, System.Boolean applyEffects) [0x001b3] in :0
at MechEngineer.Features.ComponentExplosions.Patches.MechComponent_DamageComponent_Patch.Postfix (BattleTech.MechComponent __instance, BattleTech.WeaponHitInfo hitInfo, BattleTech.ComponentDamageLevel damageLevel, System.Boolean applyEffects) [0x00000] in :0
2020-04-14T20:31:02 FYLS [LOG] OnAttackComplete for stackSequence 1640, remaining sequences: 0
@CptMoore last patch stack trace is ME's ComponentExplosions - does this look familiar?
Grey W04/14/2020
another ammo explosion on the same mech in the same battle later
Attachment file type: archive
Modlog2.zip
4.51 MB
CptMoore04/15/2020
need the harmony patch log where it says what mods hook what
need to know who else patches BattleTech.Mech.DamageLocation
Harkonnen04/15/2020
BattleTech.Mech.DamageLocation:
Prefixes:
io.mission.modrepuation
MechEngineer.Features.ComponentExplosions
us.frostraptor.IRTweaks
Transpilers:
MechEngineer.Features.ComponentExplosions
Postfixes:
MechEngineer.Features.ComponentExplosions
CptMoore04/15/2020
since I'm using a "fake" weapon to throw ComponentExplosions, modreputation or IRTweaks could be throwing the null pointers
Harkonnen04/15/2020
actually, i think thats 99% on @FrostRaptor
HullIntegrity
CptMoore04/15/2020
but patch5 sound like postfix,"last" patch of the whole bunch
I'll check if I can improve the fake weapon
Suspicious Chairwoman Alekto04/15/2020
irtweaks does the fakehit, cac's explosion is for stackpoling
Harkonnen04/15/2020
this logs have some clear HullIntegrity NREs, i think ME is just a victim here
Suspicious Chairwoman Alekto04/15/2020
could be
its been wonky since the beginning :frowning:
CptMoore04/15/2020
dont know how to improve any DamageLocation call, so hopefully its something that another mod can fix
FrostRaptor04/15/2020
Why HullIntegrity @Harkonnen given that it's a tropical biome?
2020-04-14T19:42:29 FYLS [LOG] Applying mood [JungleDayMisty]
2020-04-14T19:42:34 FYLS [LOG] Applying mood [JungleDayMisty]
Just the general 'HullIntegrity' has been a pain?
Ah, you mean these
2020-04-14T20:01:37 FYLS [ERROR] CRITICAL ERROR, PLEASE REPORT:
Delegate OnAttackSequenceEnd - Standard for message type OnAttackSequenceEnd failed with exception
Object reference not set to an instance of an object
at CBTBehaviorsEnhanced.HullIntegrity.AttackDirector_OnAttackSequenceEnd+<>c.b3_0 (BattleTech.MechComponent mc) [0x00006] in :0
at System.Linq.Enumerable+WhereListIterator`1[TSource].ToList () [0x00017] in <1b13ba6391c74847bbc3eddc86df7eee>:0
Those happen after the damage component calls presumably, though:
2020-04-14T20:01:37 FYLS [DEBUG] Creating scopedId=MECriticalHitEffect_CriticalEffect-TurretRactorCritDamage2_6fd7746a-0546-4322-820f-a6130e33a84b.0 statName=DamageReductionMultiplierAll
2020-04-14T20:01:37 FYLS [DEBUG] Creating scopedId=MECriticalHitEffect_CriticalEffect-TurretRactorCritPenalty2_6fd7746a-0546-4322-820f-a6130e33a84b.0 statName=CriticalHitChanceReceivedMultiplier
2020-04-14T20:01:37 FYLS [DEBUG] Creating scopedId=MECriticalHitEffect_CriticalEffect-TurretRactorCritDefense2_6fd7746a-0546-4322-820f-a6130e33a84b.0 statName=ToHitThisActor
2020-04-14T20:01:37 FYLS [LOG] All messages completed as expected!
2020-04-14T20:01:37 FYLS [LOG] MORALE: attack caused critical hit (+1)
2020-04-14T20:01:37 FYLS [LOG] MORALE: Player 1 team change = +1 morale
2020-04-14T20:01:37 FYLS [LOG] MORALE: team Player 1 has current 20 morale; adding 1 new morale
2020-04-14T20:01:37 FYLS [LOG] MORALE: team Player 1 now has 21 morale
2020-04-14T20:01:37 FYLS [LOG] MORALE: TargetTeam team change = + morale
2020-04-14T20:01:37 FYLS [ERROR] CRITICAL ERROR, PLEASE REPORT:
Delegate OnAttackSequenceEnd - Standard for message type OnAttackSequenceEnd failed with exception
Object reference not set to an instance of an object
at CBTBehaviorsEnhanced.HullIntegrity.AttackDirector_OnAttackSequenceEnd+<>c.b3_0
IRTweaks is a prefix, so wouldn't that fire before the only Postfix in this case?
Yeah, the HI patch is on the turret. Still need to be fixed, but I doubt it's driving the error in the ME stacktrace.
CptMoore04/15/2020
ME component explosions assumes to be part of an attack sequence, and vanilla code i think so too. so if thats missing thats the null reference exception origin
SupportBot
BOT
04/16/2020
Ticket Closed by @Grey W
:bookmark_tabs: Save transcript
:unlock: Reopen Ticket
:no_entry: Delete Ticket
FrostRaptor04/16/2020
@CptMoore I'll double check my code to see if it could cause an attack sequence that doesn't exist.
CptMoore04/16/2020
I checked again, the attack sequence has to exists otherwise ME would already crash, I didn't figure out what possible could be null. weapon can't be cause its generated by ME. hitinfo can't be null either, thats where the attackSequenceId is being retrieved. I was thinking of creating a prefix logger that just logs out all parameters on catched exceptions
maybe another mod that patches DamageLocation modifies some of the parameters
FrostRaptor04/16/2020
So maybe CBTBE... I'll look
From #closed-3496
I got a message that ammunition exploded on the mech, but it doesn’t have any ammo
https://cdn.discordapp.com/attachments/697343158467428433/697664161534181426/Unexpected_Overheating_2.png
Attachment file type: archive Modlogs.zip 3.67 MB also, this mech had a hyper laser, which, as it seems to me, exploded on the first malfunction. But this is not accurate, I could have missed the first message about the fail. no, the laser exploded in a regular manner, it already had a malfunction Suspicious Chairwoman Alekto04/14/2020 volatile components are an ammo explosion to the games logic despite not being ammo that exploded Grey W04/14/2020 but the laser was already exploded, and the hand in which he was fit is missing
https://cdn.discordapp.com/attachments/699679847517126837/699682860285559015/BattleTech_2020_04_14_20_44_34_824_cr.png
FrostRaptor04/14/2020 Looks like a fairly nasty stack-trace around that time 2020-04-14T20:31:02 FYLS [ERROR] System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.NullReferenceException: Object reference not set to an instance of an object at (wrapper dynamic-method) BattleTech.Mech.DamageLocation_Patch5(object,int,BattleTech.WeaponHitInfo,BattleTech.ArmorLocation,BattleTech.Weapon,single,single,int,BattleTech.AttackImpactQuality,BattleTech.DamageType) at (wrapper managed-to-native) System.Reflection.MonoMethod.InternalInvoke(System.Reflection.MonoMethod,object,object[],System.Exception&) at System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00032] in:0
Attachment file type: document
message.txt
2.55 KB
--- End of inner exception stack trace ---
at System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00048] in :0
at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) [0x00000] in :0
at Harmony.Traverse.GetValue () [0x00078] in <1b23547042994e96b8b6361dbe3791d9>:0
at Harmony.Traverse.GetValue[T] () [0x00001] in <1b23547042994e96b8b6361dbe3791d9>:0
at MechEngineer.Features.ComponentExplosions.MechPrivateExtensions.DamageLocation (BattleTech.Mech mech, System.Int32 originalHitLoc, BattleTech.WeaponHitInfo hitInfo, BattleTech.ArmorLocation aLoc, BattleTech.Weapon weapon, System.Single totalArmorDamage, System.Single directStructureDamage, System.Int32 hitIndex, BattleTech.AttackImpactQuality impactQuality, BattleTech.DamageType damageType) [0x00069] in :0
at MechEngineer.Features.ComponentExplosions.ComponentExplosionsFeature.CheckForExplosion (BattleTech.MechComponent component, BattleTech.WeaponHitInfo hitInfo, BattleTech.ComponentDamageLevel damageLevel, System.Boolean applyEffects) [0x001b3] in :0
at MechEngineer.Features.ComponentExplosions.Patches.MechComponent_DamageComponent_Patch.Postfix (BattleTech.MechComponent __instance, BattleTech.WeaponHitInfo hitInfo, BattleTech.ComponentDamageLevel damageLevel, System.Boolean applyEffects) [0x00000] in :0
2020-04-14T20:31:02 FYLS [LOG] OnAttackComplete for stackSequence 1640, remaining sequences: 0
@CptMoore last patch stack trace is ME's ComponentExplosions - does this look familiar?
Grey W04/14/2020
another ammo explosion on the same mech in the same battle later
https://cdn.discordapp.com/attachments/699679847517126837/699700071058505888/BattleTech_2020_04_14_22_14_47_243_cr.png
Attachment file type: archive Modlog2.zip 4.51 MB CptMoore04/15/2020 need the harmony patch log where it says what mods hook what need to know who else patches BattleTech.Mech.DamageLocation Harkonnen04/15/2020 BattleTech.Mech.DamageLocation: Prefixes: io.mission.modrepuation MechEngineer.Features.ComponentExplosions us.frostraptor.IRTweaks Transpilers: MechEngineer.Features.ComponentExplosions Postfixes: MechEngineer.Features.ComponentExplosions CptMoore04/15/2020 since I'm using a "fake" weapon to throw ComponentExplosions, modreputation or IRTweaks could be throwing the null pointers Harkonnen04/15/2020 actually, i think thats 99% on @FrostRaptor HullIntegrity CptMoore04/15/2020 but patch5 sound like postfix,"last" patch of the whole bunch I'll check if I can improve the fake weapon Suspicious Chairwoman Alekto04/15/2020 irtweaks does the fakehit, cac's explosion is for stackpoling Harkonnen04/15/2020 this logs have some clear HullIntegrity NREs, i think ME is just a victim here Suspicious Chairwoman Alekto04/15/2020 could be
its been wonky since the beginning :frowning: CptMoore04/15/2020 dont know how to improve any DamageLocation call, so hopefully its something that another mod can fix FrostRaptor04/15/2020 Why HullIntegrity @Harkonnen given that it's a tropical biome? 2020-04-14T19:42:29 FYLS [LOG] Applying mood [JungleDayMisty] 2020-04-14T19:42:34 FYLS [LOG] Applying mood [JungleDayMisty] Just the general 'HullIntegrity' has been a pain? Ah, you mean these 2020-04-14T20:01:37 FYLS [ERROR] CRITICAL ERROR, PLEASE REPORT: Delegate OnAttackSequenceEnd - Standard for message type OnAttackSequenceEnd failed with exception Object reference not set to an instance of an object at CBTBehaviorsEnhanced.HullIntegrity.AttackDirector_OnAttackSequenceEnd+<>c.b3_0 (BattleTech.MechComponent mc) [0x00006] in :0
at System.Linq.Enumerable+WhereListIterator`1[TSource].ToList () [0x00017] in <1b13ba6391c74847bbc3eddc86df7eee>:0
Those happen after the damage component calls presumably, though:
2020-04-14T20:01:37 FYLS [DEBUG] Creating scopedId=MECriticalHitEffect_CriticalEffect-TurretRactorCritDamage2_6fd7746a-0546-4322-820f-a6130e33a84b.0 statName=DamageReductionMultiplierAll
2020-04-14T20:01:37 FYLS [DEBUG] Creating scopedId=MECriticalHitEffect_CriticalEffect-TurretRactorCritPenalty2_6fd7746a-0546-4322-820f-a6130e33a84b.0 statName=CriticalHitChanceReceivedMultiplier
2020-04-14T20:01:37 FYLS [DEBUG] Creating scopedId=MECriticalHitEffect_CriticalEffect-TurretRactorCritDefense2_6fd7746a-0546-4322-820f-a6130e33a84b.0 statName=ToHitThisActor
2020-04-14T20:01:37 FYLS [LOG] All messages completed as expected!
2020-04-14T20:01:37 FYLS [LOG] MORALE: attack caused critical hit (+1)
2020-04-14T20:01:37 FYLS [LOG] MORALE: Player 1 team change = +1 morale
2020-04-14T20:01:37 FYLS [LOG] MORALE: team Player 1 has current 20 morale; adding 1 new morale
2020-04-14T20:01:37 FYLS [LOG] MORALE: team Player 1 now has 21 morale
2020-04-14T20:01:37 FYLS [LOG] MORALE: TargetTeam team change = + morale
2020-04-14T20:01:37 FYLS [ERROR] CRITICAL ERROR, PLEASE REPORT:
Delegate OnAttackSequenceEnd - Standard for message type OnAttackSequenceEnd failed with exception
Object reference not set to an instance of an object
at CBTBehaviorsEnhanced.HullIntegrity.AttackDirector_OnAttackSequenceEnd+<>c.b 3_0
IRTweaks is a prefix, so wouldn't that fire before the only Postfix in this case?
Yeah, the HI patch is on the turret. Still need to be fixed, but I doubt it's driving the error in the ME stacktrace.
CptMoore04/15/2020
ME component explosions assumes to be part of an attack sequence, and vanilla code i think so too. so if thats missing thats the null reference exception origin
SupportBot
BOT
04/16/2020
Ticket Closed by @Grey W
:bookmark_tabs: Save transcript
:unlock: Reopen Ticket
:no_entry: Delete Ticket
FrostRaptor04/16/2020
@CptMoore I'll double check my code to see if it could cause an attack sequence that doesn't exist.
CptMoore04/16/2020
I checked again, the attack sequence has to exists otherwise ME would already crash, I didn't figure out what possible could be null. weapon can't be cause its generated by ME. hitinfo can't be null either, thats where the attackSequenceId is being retrieved. I was thinking of creating a prefix logger that just logs out all parameters on catched exceptions
maybe another mod that patches DamageLocation modifies some of the parameters
FrostRaptor04/16/2020
So maybe CBTBE... I'll look