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

next action has ThrowArgumentNullException #434

Closed
Waitsnake opened this issue Oct 19, 2024 · 6 comments
Closed

next action has ThrowArgumentNullException #434

Waitsnake opened this issue Oct 19, 2024 · 6 comments

Comments

@Waitsnake
Copy link

Waitsnake commented Oct 19, 2024

Used RotationSolverReborn 7.0.5.148 with RebornRotations 7.0.5.147.

Next action is not working (except maybe the first or second action at beginning depending on job) and then it stops with a ThrowArgumentNullException.

Failed to invoke the next action, please contact support.
Value cannot be null. (Parameter 'source')
at System.Linq.ThrowHelper.ThrowArgumentNullException(ExceptionArgument argument)
at System.Linq.Enumerable.Any[TSource](IEnumerable1 source, Func2 predicate)
at System.Linq.Enumerable.Any[TSource](IEnumerable1 source, Func2 predicate)
at RotationSolver.Basic.Helpers.ObjectHelper.IsTopPriorityHostile(IGameObject obj) in D:\a\RotationSolverReborn\RotationSolverReborn\RotationSolver.Basic\Helpers\ObjectHelper.cs:line 321
at System.Linq.Enumerable.WhereEnumerableIterator1.ToList() at RotationSolver.Basic.Actions.ActionTargetInfo.<FindTargetByType>g__FindHostile|33_8(<>c__DisplayClass33_0&) in D:\a\RotationSolverReborn\RotationSolverReborn\RotationSolver.Basic\Actions\ActionTargetInfo.cs:line 970 at RotationSolver.Basic.Actions.ActionTargetInfo.FindTargetByType(IEnumerable1 IGameObjects, TargetType type, Single healRatio, SpecialActionType actionType) in D:\a\RotationSolverReborn\RotationSolverReborn\RotationSolver.Basic\Actions\ActionTargetInfo.cs:line 776
at RotationSolver.Basic.Actions.ActionTargetInfo.FindTarget(Boolean skipAoeCheck, Boolean skipStatusProvideCheck) in D:\a\RotationSolverReborn\RotationSolverReborn\RotationSolver.Basic\Actions\ActionTargetInfo.cs:line 334
at RotationSolver.Basic.Actions.BaseAction.CanUse(IAction& act, Boolean isLastAbility, Boolean isFirstAbility, Boolean skipStatusProvideCheck, Boolean skipComboCheck, Boolean skipCastingCheck, Boolean usedUp, Boolean skipAoeCheck, Byte gcdCountForAbility) in D:\a\RotationSolverReborn\RotationSolverReborn\RotationSolver.Basic\Actions\BaseAction.cs:line 154
at DefaultRotations.Ranged.BRD_Default.DefenseAreaAbility(IAction nextGCD, IAction& act) in D:\a\RebornRotations\RebornRotations\BasicRotations\Ranged\BRD_Default.cs:line 88
at RotationSolver.Basic.Rotations.CustomRotation.UpdateDefenseActions(IAction& act) in D:\a\RotationSolverReborn\RotationSolverReborn\RotationSolver.Basic\Rotations\CustomRotation_Invoke.cs:line 109
at RotationSolver.Basic.Rotations.CustomRotation.UpdateActions(JobRole role) in D:\a\RotationSolverReborn\RotationSolverReborn\RotationSolver.Basic\Rotations\CustomRotation_Invoke.cs:line 66
at RotationSolver.Basic.Rotations.CustomRotation.TryInvoke(IAction& newAction, IAction& gcdAction) in D:\a\RotationSolverReborn\RotationSolverReborn\RotationSolver.Basic\Rotations\CustomRotation_Invoke.cs:line 21

@LTS-FFXIV
Copy link
Member

What are you doing when this happens?

@Waitsnake
Copy link
Author

Waitsnake commented Oct 19, 2024

E.g. here I'm with BRD and RebornRotations loaded at a Dummy.
Next action advices to use "the wanderer's minuet" as you see in the small UI window for next action and the marking of "teaching mode" around it.
exception_1
Then I press "the wanderer's minuet" and instead of advising an next action there is no action in UI for "next action" and also teaching mode shows nothing.
exception_2
Searching for possible reasons why next action hangs I found out pressing on the BRD job icon on left side opens a window where I see this error stack message I posted before.
exception_3

I also uninstalled the plugin and closed FFXIV and opened it again and installed RotationSolverReborn fresh but same behaviour.
It was working before todays update, e.g. yesterday evening all was fine.

@LTS-FFXIV
Copy link
Member

fix deployed in next version with #435

@Waitsnake
Copy link
Author

Waitsnake commented Oct 19, 2024

Ok, I removed plugin again then stopped FFXIV.
Then I renamed my old RotationSolverReborn config folder in C:\Users\username\AppData\Roaming\XIVLauncher\pluginConfigs
to RotationSolver_old.
exception_solved
Then I started game again and installed RotationSolverReborn again and now all works again as before with next actions working without an exception.

So it looked you did in RotationSolverReborn or in RebornRotations a not compatible change with old config.

@Waitsnake
Copy link
Author

fix deployed in next version with #435

Ok, I could try my old crashing config again when this fix is out.

@Waitsnake
Copy link
Author

Got a new Update for RotationSolverReborn 7.0.5.149 (with RebornRotations 7.0.5.147) and with my old config I still see the next action not working with ThrowArgumentNullException. With my new config still all is fine.
exception_still_there_with_old_config
I compared the two config folders with BeyondCompare and there are quite some differences since I not reseted the config in quite some time.

The biggest difference have there 11 files here:
BeneficialPositions.json
DangerousStatus.json
HostileCastingKnockback.json
HostileCastingTank.json
InvincibleStatus.json
NoCastingStatus.json
NoHostileNames.json
NoProvokeNames.json
PriorityStatus.json
PrioTargetNames.json
RotationSolverRecord.json

All the listed 11 json files have in common that the old ones only includes the string "null" while the new once have data in them.
old_vs_new_config

I have have no idea how these files got in this state since i was not monitoring them before?
Maybe you introduced those files or depending features iteratively over time and at one of time a "null" was written into them witch causes now the Exception?

Anyway, I will continue with the fresh generated files from today since those config files are working.

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

No branches or pull requests

2 participants