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

Check to see if reactivation delay is included in cap calculatations #1401

Closed
blitzmann opened this issue Feb 17, 2018 · 7 comments
Closed
Labels
done This task is done! \o/ investigate Issue needs more investigation and discussion before a solve is implemented todo Neither really a bug nor a feature, just something that has to be done.

Comments

@blitzmann
Copy link
Collaborator

See #1387 for discussion. It looks like there is code that checks for this, but I am unsure if it's properly applied. Need to double check, and if it isn't, come up with a solution to incorporate module reactivation delay in the cap calculations

@blitzmann blitzmann added todo Neither really a bug nor a feature, just something that has to be done. investigate Issue needs more investigation and discussion before a solve is implemented labels Feb 17, 2018
@blitzmann
Copy link
Collaborator Author

It seems that reactivation delays used to be included, but were regressed with a change aimed to make the code more readable (and improve functionality for things like MJD). Will take a look more in-depth this week, I don't think it's too difficult, especially considering we have a list of all reactivation modules and can test them one by one without too much trouble.

@blitzmann
Copy link
Collaborator Author

The linked issue also has some more information about this

@Neugeniko
Copy link
Contributor

The cap calculation takes into account the reload of the aar in this case but doesn't calculate the proper sustained hp/sec due to reload. With a asb the cap doesnt matter and the sustained hp/sec is just determined by 'duty cycle' of asb, currently the asbs are bugged and show reinforced=sustained hp/sec.

@Neugeniko
Copy link
Contributor

Reactivation delay and Reload of tank mods is a different mechanic. And I think coding may be different enough to warrant separate issues?

@blitzmann
Copy link
Collaborator Author

Reactivation delay and Reload of tank mods is a different mechanic.

When it comes to cap, I believe they are the same for pyfa, see comments here:

if numShots > 1:

However, I will re-open the other issue until it can be thoroughly looked at, was just thinking (or hoping) they were the same. Cap stuff always gives me a headache @_@

@blitzmann
Copy link
Collaborator Author

I believe it was b3c727 that regresses reactivation delay in a few instances (at least with new items that have been released). Would need to look into the current code and the code it replaced (which was tested as taking reactivation into account properly) to see how best to merge the two, taking into consideration all available use cases. Can use the same query from the referred issue to determine which modules use cap as well as have an activation delay:

select * from invtypes t
JOIN dgmtypeattribs ta ON ta.typeid = t.typeid
join dgmattribs a ON a.attributeid = ta.attributeid
where a.attributeName = 'moduleReactivationDelay' and ta.value != 0.0
and t.typeid in (
	select t.typeid from invtypes t
	JOIN dgmtypeattribs ta ON ta.typeid = t.typeid
	join dgmattribs a ON a.attributeid = ta.attributeid
	where a.attributeName = 'capacitorNeed' and ta.value != 0.0
)

I think it could be as easy as making another case statement, but I haven't dived into it.

@DarkFenX
Copy link
Member

DarkFenX commented Oct 2, 2019

It is included. Example: MJD on paladin. Cap use 786, cycle time 9, reactivation delay 54.

Cap use shown in UI: 786÷63 = 12.476190476 (12.5 shown in cap column and in cap stat column). Cap sim graph shows it too:

image

This data used by graph is also used by sim to calculate stability issue, so yes it is all considered.

@DarkFenX DarkFenX closed this as completed Oct 2, 2019
@DarkFenX DarkFenX added the done This task is done! \o/ label Oct 2, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
done This task is done! \o/ investigate Issue needs more investigation and discussion before a solve is implemented todo Neither really a bug nor a feature, just something that has to be done.
Projects
None yet
Development

No branches or pull requests

3 participants