Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Red Alert commit no 25594: System.ArgumentNullException: Value cannot be null. #16173

Closed
fusion809 opened this issue Feb 6, 2019 · 4 comments

Comments

@fusion809
Copy link
Contributor

Issue Summary

I was near the end of an one hour and sixteen minute game with the map "Great Sahara 2" and without warning the game crashed, with the exception log:

OpenRA engine version bleed-25594
Red Alert mod version bleed-25594
on map 733bf2a800527fa96db5bc9437bee8e1a6ddb969 (Great Sahara 2 by Nuke'm Bro, Green Giant).
Date: 2019-02-06 02:22:18Z
Operating System: Linux (Unix 4.19.16.0)
Runtime Version: Mono 5.16.0.220 (tarball Sun Jan  6 14:59:55 UTC 2019) CLR 4.0.30319.42000
Exception of type `System.ArgumentNullException`: Value cannot be null.
Parameter name: key
  at System.Collections.Generic.Dictionary`2[TKey,TValue].FindEntry (TKey key) [0x00008] in <085ada9f332741ab90ed3fbc0ae06fe3>:0 
  at System.Collections.Generic.Dictionary`2[TKey,TValue].get_Item (TKey key) [0x00000] in <085ada9f332741ab90ed3fbc0ae06fe3>:0 
  at OpenRA.Mods.Common.Warheads.Warhead.IsValidAgainst (OpenRA.Traits.FrozenActor victim, OpenRA.Actor firedBy) [0x00011] in <7b72e2feaa294a61964ebdc5b592f677>:0 
  at OpenRA.GameRules.WeaponInfo+<IsValidAgainst>c__AnonStorey0.<>m__0 (OpenRA.Traits.IWarhead w) [0x00000] in <cc8c0e6b94aa40f48cbfc95a91810c22>:0 
  at System.Linq.Enumerable.Any[TSource] (System.Collections.Generic.IEnumerable`1[T] source, System.Func`2[T,TResult] predicate) [0x0002c] in <dbc731b3823b48689299547fb566d4a8>:0 
  at OpenRA.GameRules.WeaponInfo.IsValidAgainst (OpenRA.Traits.FrozenActor victim, OpenRA.Actor firedBy) [0x0002c] in <cc8c0e6b94aa40f48cbfc95a91810c22>:0 
  at OpenRA.GameRules.WeaponInfo.IsValidAgainst (OpenRA.Traits.Target target, OpenRA.World world, OpenRA.Actor firedBy) [0x00031] in <cc8c0e6b94aa40f48cbfc95a91810c22>:0 
  at OpenRA.Mods.Common.Traits.AttackBase.HasAnyValidWeapons (OpenRA.Traits.Target t, System.Boolean checkForCenterTargetingWeapons) [0x00091] in <7b72e2feaa294a61964ebdc5b592f677>:0 
  at OpenRA.Mods.Common.Traits.AttackBase.IsReachableTarget (OpenRA.Traits.Target target, System.Boolean allowMove) [0x00000] in <7b72e2feaa294a61964ebdc5b592f677>:0 
  at OpenRA.Mods.Common.Traits.AutoTarget.ShouldAttack (System.Boolean& allowMove) [0x00042] in <7b72e2feaa294a61964ebdc5b592f677>:0 
  at OpenRA.Mods.Common.Traits.AutoTarget.OpenRA.Traits.INotifyIdle.TickIdle (OpenRA.Actor self) [0x00018] in <7b72e2feaa294a61964ebdc5b592f677>:0 
  at OpenRA.Actor.Tick () [0x00084] in <cc8c0e6b94aa40f48cbfc95a91810c22>:0 
  at OpenRA.World.Tick () [0x00043] in <cc8c0e6b94aa40f48cbfc95a91810c22>:0 
  at OpenRA.Game.InnerLogicTick (OpenRA.Network.OrderManager orderManager) [0x00231] in <cc8c0e6b94aa40f48cbfc95a91810c22>:0 
  at OpenRA.Game.LogicTick () [0x0004d] in <cc8c0e6b94aa40f48cbfc95a91810c22>:0 
  at OpenRA.Game.Loop () [0x000d2] in <cc8c0e6b94aa40f48cbfc95a91810c22>:0 
  at OpenRA.Game.Run () [0x0003e] in <cc8c0e6b94aa40f48cbfc95a91810c22>:0 
  at OpenRA.Game.InitializeAndRun (System.String[] args) [0x00010] in <cc8c0e6b94aa40f48cbfc95a91810c22>:0 
  at OpenRA.Program.Main (System.String[] args) [0x00048] in <cc8c0e6b94aa40f48cbfc95a91810c22>:0 

I'm sorry, I lost the logs as I wanted to check out my replay to help refresh of memory of what I was doing (which sadly, didn't help) and that overwrote the other logs. I have played other RA games, built from this same commit, and so far not experienced this exception, so I'm a little surprised and I realize this might be challenging to reproduce.

There were quite a few units and I noticed things lagged at times (which I know is a known issue, but I'm wondering if it might have contributed).

System Information

  • Operating System: NixOS 19.03pre166987.bc41317e243 (Koi) x86_64.
  • .NET / Mono Version: Mono 5.16.0.220.
  • OpenRA Version: commit no 25594, hash 297be6d.
  • Mod: Red Alert.

Additional Information:

I wish I could help here, as I'm sure this would help, but I do not know how to reproduce it. As I said, I've played many RA games from this same commit, without experiencing this issue.

@fusion809
Copy link
Contributor Author

fusion809 commented Feb 6, 2019

If it helps my other log files with a timestamp that matches when the replay crashed are in: openra-ra-25594-null-exception-logs.zip.

@abcdefg30 abcdefg30 added the Crash label Feb 6, 2019
@pchote pchote added this to the Next Release milestone Feb 6, 2019
@pchote
Copy link
Member

pchote commented Feb 6, 2019

Does the replay reproduce the crash?

@pchote
Copy link
Member

pchote commented Feb 6, 2019

Are you 100% sure that this replay was recorded on 297be6d?

The replay desyncs when I try to watch it on this commit, which suggests that it was different. The crash signature also matches #16019, which was definitely fixed by #16051.

@fusion809
Copy link
Contributor Author

fusion809 commented Feb 6, 2019

Does for me (reproduce the crash). Oops, sorry, no it isn't. The commit specified in the packaging files is 0g4hlwi59ifsn70z0p69r5dhk99vh9pacpf9zcvv3rgmbw848lvx, which is invalid, so given the issues I've had with the package it is probably from the playtest. As I'm not sure I'm going to close until if and when it happens again from 297be6d.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants