ChrisNZL / Tallowmere2

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

Null ref: T2.Debuff_Poisoned.ApplyCosmeticEffects #1002

Closed ChrisNZL closed 2 years ago

ChrisNZL commented 2 years ago

Auto reports, 0.3.3, feedback IDs (all from same player): -20220206-3MPJ8, 20220206-CJ2VV, 20220206-CXF5B

Method failing due to CreatureStruct being null, or HUD render texture being null.

Underlying cause is likely related to ERROR: Game_RenderTextures >> GetHealthbarRenderTextureContainer: returning null, not allowed #938

Related method failing according to stack trace: T2.Debuff_Poisoned._OnUpdate

TASKS TODO:

Log part 1:

12:43:48, Frame 108501, LOG »  DungeonRoomTransitioner.Update: Revealing room: Room 6: Fire Grotto (Room 6)
12:43:48, Frame 108501, WARNING »  WARNING: Game_RenderTextures: InitNewHealthbarRenderTextureContainer: returning null. newHud.IsNull(): False
[[[ ^ REPEATING MESSAGE... ]]]

12:44:46, Frame 110727, EXCEPTION »  NullReferenceException: Object reference not set to an instance of an object
>>>>> CRITICAL ERROR >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

T2.Debuff_Poisoned.ApplyCosmeticEffects ()
T2.Debuff_Poisoned._OnAppliedToCreatureStruct (T2.CreatureStruct newCreatureStruct)
T2.Debuff.OnAppliedToCreatureStruct (T2.CreatureStruct creatureStruct)
T2.CreatureStruct.__ApplyDebuff (T2.PendingDebuffData debuffData)
T2.CreatureBody.AddPendingDebuffs ()
T2.CreatureBody.Update ()

GameStates: RompingThroughDungeon
OnlineGameInfo: Device is online.
Server: Vultr-Tokyo-01
GameID: XS8VL
GameSetupMode: NetworkCoop
Players: 4
DungeonRoomTransitioner.state: Null
DungeonRoom.state: Ready
Room: 6 / 6
RoomModifiers: LargeRoom (Large Room)
YouHaveDiedState: Null
SystemPlayer InputDevice: XInput Controller
HumanPlayer 1 InputDevice: XInput Controller

12:44:46, Frame 110728, WARNING »  WARNING: Game_RenderTextures: InitNewHealthbarRenderTextureContainer: returning null. newHud.IsNull(): False

Log part 2:

12:44:46, Frame 110747, WARNING »  WARNING: Game_RenderTextures: InitNewHealthbarRenderTextureContainer: returning null. newHud.IsNull(): False

12:44:46, Frame 110747, EXCEPTION »  NullReferenceException: Object reference not set to an instance of an object
>>>>> CRITICAL ERROR >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

T2.Debuff_Poisoned._OnUpdate ()
T2.Debuff.Debuff_OnUpdate ()
T2.CreatureBody.Update ()

GameStates: RompingThroughDungeon
OnlineGameInfo: Device is online.
Server: Vultr-Tokyo-01
GameID: XS8VL
GameSetupMode: NetworkCoop
Players: 4
DungeonRoomTransitioner.state: Null
DungeonRoom.state: Ready
Room: 6 / 6
RoomModifiers: LargeRoom (Large Room)
YouHaveDiedState: Null
SystemPlayer InputDevice: XInput Controller
HumanPlayer 1 InputDevice: XInput Controller

12:44:46, Frame 110748, WARNING »  WARNING: Game_RenderTextures: InitNewHealthbarRenderTextureContainer: returning null. newHud.IsNull(): False

12:44:46, Frame 110748, EXCEPTION »  NullReferenceException: Object reference not set to an instance of an object
>>>>> CRITICAL ERROR >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

T2.Debuff_Poisoned._OnUpdate ()
T2.Debuff.Debuff_OnUpdate ()
T2.CreatureBody.Update ()

GameStates: RompingThroughDungeon
OnlineGameInfo: Device is online.
Server: Vultr-Tokyo-01
GameID: XS8VL
GameSetupMode: NetworkCoop
Players: 4
DungeonRoomTransitioner.state: Null
DungeonRoom.state: Ready
Room: 6 / 6
RoomModifiers: LargeRoom (Large Room)
YouHaveDiedState: Null
SystemPlayer InputDevice: XInput Controller
HumanPlayer 1 InputDevice: XInput Controller

12:44:46, Frame 110749, WARNING »  WARNING: Game_RenderTextures: InitNewHealthbarRenderTextureContainer: returning null. newHud.IsNull(): False
ChrisNZL commented 2 years ago

Should be fixed in 0.3.4.

With a fix from issue #938, and further null checks added within Debuff_Poisoned, issue should be resolved.