-
Notifications
You must be signed in to change notification settings - Fork 408
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
Projected fit stats occasionally 'lost' when changes are made to the fit. #1634
Comments
I took a look at this a little bit a while back, and peaking at it again now. I think I have an idea on why it may be doing this, but no real idea on how to fix it right now. It deals with the complex order of operations that happens during fit calculations.
The problem seems to stem from step 3 - the fact that we don't apply Fit2's projections to the fit when calculating it as part of a projection. And the fact that we flag it as "calculated" causes it to skip recalculations when switching to it's tab. I am not sure off the top of my head the best way to handle this. It might suffice to say "don't set the calculated flag on a fit if it's being calculated as part of another fit's projection and it also has projections itself... that way the fit will always receive a fresh calculation when witching to it's tab. I'm not sure what other kind of logic that might affect, so I'll have to research into this a bit more and do some testing. :) |
Perhaps, for each fit using projection, create a new object/class (or even copy) to respresent other fits instead of using the other fit object. Instead of the relationship being |
This was something that was investigated the last few times the projection code was refactored. I don't exactly remember all the reasons against it (I'm sure it's documented in an issue somewhere), but while it seems like a clever solution on the surface, it doesn't really work out all that well. I know that's not a very helpful answer :/ That being said, IIRC, a version of it is used with self projections, since that's literally the only way to do them without running into recursions (or at least this is one of the ways I solved self-projections way back when, can't remember if it's still the method we use today) |
Revisiting this as I've been simulating spider tanks and it's annoying. When switching tabs to a fit involved in a looped projection, would it be possible to recalculate the fit being actively viewed when switched to, only in this specific circumstance? |
When projecting fits onto each other (the problem is seen when it is multiple different fits, not one fit projected onto itself like a logi chain), and modules are changed/activated/inactivated on one fit, the projected stats will be lost on the other fit until the projection is removed/replaced or state is changed.
Easy to reproduce. See attached .gif for an example. Doesn't seem to be dependent on what modules are being projected, nor what ship(s) the projections are coming from. Doesn't appear to be an issue with command ships added under the 'command' tab.
The text was updated successfully, but these errors were encountered: