Vanilla-Expanded/VanillaAchievementsExpanded

TrackerBase.Key bug and questions.

Opened this issue · 0 comments

When updating my mod to use this latest version of VAE I've seen that TrackerBase.Key must now implement a setter.

There is an infinite recursion bug that will crash the game when attempting to either set the Key value in GenericTracker, or use the copy constructor in GenericTracker (which in turn calls the Key setter). This happens because the setter calls itself - it seems that it should be setting the value of the field key rather than the property Key.

As far as I can tell there does not seem to be a reason for the abstract property to need a setter. The only place the setter is being used is in GenericTracker, and it was bugged there anyway, and everywhere else the implementation seems to be blank. Following in that example I will also leave my custom trackers will blank setters, but I find it strange. Normally I wouldn't bring up minor code quality stuff like this in mod projects, but seeing that this is a framework for use by other developers it seems reasonable to question it.

Thanks.