ChrisNZL / Tallowmere2

Changelog, issue tracker, and development knowledge for Tallowmere 2.
https://tallowmere2.com
13 stars 0 forks source link

Null ref: T2.CreatureStruct.ReceiveDamage #559

Closed ChrisNZL closed 2 years ago

ChrisNZL commented 4 years ago

v0.1.4a

Feedback ID: 20200617-NVCZ6

12:15:06, Frame 65904, EXCEPTION »  NullReferenceException: Object reference not set to an instance of an object
>>>>> CRITICAL ERROR >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

T2.CreatureStruct.ReceiveDamage (T2.Creature fromCreature, UnityEngine.Vector2 fromPosition, T2.DamageBlob damageBlob, T2.Trap fromTrap, T2.LastHitInfo newLastHitInfo)
T2.ProjectileHitScanner.Update ()

GameStates: RompingThroughDungeon, TransitioningToDungeonRoom
GameSetupMode: Singleplayer
Players: 1
DungeonRoomTransitionerState: WaitingForRoomToLoad
Room: 8 / 9
RoomModifiers: FlailsOnly (链枷派对)
YouHaveDiedState: Null

Feedback ID: 20200619-HR2F9

10:30:33, Frame 66975, EXCEPTION »  NullReferenceException: Object reference not set to an instance of an object
>>>>> CRITICAL ERROR >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

T2.CreatureStruct.ReceiveDamage (T2.Creature fromCreature, UnityEngine.Vector2 fromPosition, T2.DamageBlob damageBlob, T2.Trap fromTrap, T2.LastHitInfo newLastHitInfo)
T2.MeleeWeapon.OnSwungAtCreature (T2.Creature otherCreature, UnityEngine.Vector2 thisCreatureCenterPointPosition, UnityEngine.Vector2 hitPoint)
T2.MeleeWeapon.OnAttacked ()
T2.Weapon.OnUpdate ()
T2.CreatureBody.Update ()

GameStates: RompingThroughDungeon, TransitioningToDungeonRoom
GameSetupMode: Singleplayer
Players: 1
DungeonRoomTransitionerState: WaitingForRoomToLoad
Room: 11 / 12
RoomModifiers: ScythesOnly (镰刀派对), TankyMonsters (重装怪物)
YouHaveDiedState: Null

Feedback ID: 20200619-68SMT

1:08:05, Frame 16191, EXCEPTION »  NullReferenceException: Object reference not set to an instance of an object
>>>>> CRITICAL ERROR >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

T2.CreatureStruct.ReceiveDamage (T2.Creature fromCreature, UnityEngine.Vector2 fromPosition, T2.DamageBlob damageBlob, T2.Trap fromTrap, T2.LastHitInfo newLastHitInfo)
T2.Flail.Update ()

GameStates: RompingThroughDungeon, TransitioningToDungeonRoom
GameSetupMode: Singleplayer
Players: 1
DungeonRoomTransitionerState: WaitingForRoomToLoad
Room: 2 / 3
RoomModifiers: None
YouHaveDiedState: Null
ChrisNZL commented 4 years ago

Fixed in 0.1.4b.

Added checks to ensure damage is only processed when room is ready.

ChrisNZL commented 2 years ago

Re-opening.

Auto report. Version 0.2.8a. Feedback ID: 20210920-TXM4W

Happening again, but this time, the only game state is ShowingTitleScreen.

3:36:12, Frame 206079, EXCEPTION »  NullReferenceException: Object reference not set to an instance of an object
>>>>> CRITICAL ERROR >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

T2.CreatureStruct.ReceiveDamage (T2.Creature fromCreature, UnityEngine.Vector2 fromPosition, T2.DamageBlob damageBlob, T2.Trap fromTrap, T2.LastHitInfo newLastHitInfo)
T2.ProjectileHitScanner.Update ()

GameStates: ShowingTitleScreen
OnlineGameInfo: Device is offline.
No previous server nor online game info.
ChrisNZL commented 2 years ago

Should be fixed in 0.3.1a.

Added more null checks within CreatureStruct.ReceiveDamage.

Added GameState-checking within ProjectileHitScanner.Update (for use with Leaf Shield).

ChrisNZL commented 2 years ago

Couple auto reports from v0.3.2a coming in.

Feedback IDs: 20220131-WCN4Q, 20220131-Z8DNT

LightningBolt-related

10:23:47, Frame 586432, LOG »  NetworkMessage_MakeCreatureDrinkPotion: Removing item from database. simpleItemStruct.netID: Master1586

10:24:26, Frame 589156, EXCEPTION »  NullReferenceException: Object reference not set to an instance of an object
>>>>> CRITICAL ERROR >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

T2.CreatureStruct.ReceiveDamage (T2.Creature fromCreature, UnityEngine.Vector2 fromPosition, T2.DamageBlob damageBlob, T2.Trap fromTrap, T2.LastHitInfo newLastHitInfo)
T2.LightningBoltGroup.CreateLightningBolt ()
T2.LightningBoltGroup.CreateLightningBoltGroup (T2.CreatureState instantiatedCreatureState, T2.Weapon parentWeapon, UnityEngine.Vector2 position, UnityEngine.Transform newTarget, System.Int32 seed, T2.Trap parentTrap, T2.Creature _thirdPartyCastingCreature, T2.ProjectileSize newProjectileSize, T2.DamageSource damageSource)
T2.AlterantExtension_Lightning.OnCastOrSwing (T2.Creature targetCreature, T2.SeedFactory seedFactory)
T2.AlterantTracker.OnCastOrSwing (T2.Creature targetCreature, T2.SeedFactory seedFactory)
T2.RangedWeapon.OnAttackIsDown (System.Boolean& attacked, System.Boolean& sendNetworkActionState)
T2.Weapon.OnUpdate ()
T2.CreatureBody.Update ()

GameStates: InitialisingAsNetworkHost, RompingThroughDungeon
OnlineGameInfo: Device is online.
Server: Vultr-LosAngeles-01
GameID: BMHLS
GameSetupMode: NetworkCoop
Players: 3
DungeonRoomTransitioner.state: Null
DungeonRoom.state: Ready
Room: 21 / 21
RoomModifiers: ScythesOnly (Scythe Party), TankyMonsters (Tanky Monsters), Spiky (Spiky), LargeRoom (Large Room)
YouHaveDiedState: Null
SystemPlayer InputDevice: Keyboard
HumanPlayer 1 InputDevice: Keyboard
10:56:14, Frame 276740, LOG »  NetworkMessage_MakeCreatureDrinkPotion: Removing item from database. simpleItemStruct.netID: Master2642
10:56:21, Frame 277064, LOG »  PotionBehaviour.OnConsumePotion: Telling server to make creature drink potion. simpleItemStruct.netID: Master2395

10:56:37, Frame 277893, EXCEPTION »  NullReferenceException: Object reference not set to an instance of an object
>>>>> CRITICAL ERROR >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

T2.CreatureStruct.ReceiveDamage (T2.Creature fromCreature, UnityEngine.Vector2 fromPosition, T2.DamageBlob damageBlob, T2.Trap fromTrap, T2.LastHitInfo newLastHitInfo)
T2.LightningBoltGroup.CreateLightningBolt ()
T2.LightningBoltGroup.Update ()

GameStates: RompingThroughDungeon
OnlineGameInfo: Device is online.
Server: Vultr-LosAngeles-01
GameID: BMHLS
GameSetupMode: NetworkCoop
Players: 3
DungeonRoomTransitioner.state: Null
DungeonRoom.state: Ready
Room: 7 / 7
RoomModifiers: BulletHell (Bullet Hell)
YouHaveDiedState: Null
SystemPlayer InputDevice: Keyboard
HumanPlayer 1 InputDevice: Keyboard
ChrisNZL commented 2 years ago

Version 0.3.3:

Stack traces:

image

image