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

Freehold: Auto route improvements #1903

Closed
Wotuu opened this issue Jul 29, 2023 · 6 comments
Closed

Freehold: Auto route improvements #1903

Wotuu opened this issue Jul 29, 2023 · 6 comments
Assignees
Labels
auto route creator Generating routes from combat logs. bug Something isn't working

Comments

@Wotuu
Copy link
Contributor

Wotuu commented Jul 29, 2023

Was just running this key while testing another feature and noticed two oddities: https://raider.io/mythic-plus-runs/season-df-2/16931073-10-freehold

  • We're missing like 0.7% of the enemy forces in the route
  • It did something odd at pulls 6 and 7 where it split it into two pulls
@Wotuu Wotuu added bug Something isn't working auto route creator Generating routes from combat logs. labels Jul 29, 2023
@Wotuu Wotuu self-assigned this Jul 29, 2023
@Wotuu
Copy link
Contributor Author

Wotuu commented Jul 30, 2023

Pull 6+7, this is what happened:

[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesCreateNewActivePull {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f"} 
[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesEnemyEngaged {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","uniqueUid":"129559-0003451454","timestamp":"2023-07-29 08:33:48"} 
[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesEnemyEngaged {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","uniqueUid":"129548-0004451454","timestamp":"2023-07-29 08:33:49"} 
[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesEnemyEngaged {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","uniqueUid":"127111-0000451454","timestamp":"2023-07-29 08:33:49"} 
[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesEnemyEngaged {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","uniqueUid":"130522-0005451454","timestamp":"2023-07-29 08:33:49"} 
[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesEnemyEngaged {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","uniqueUid":"130024-0001451454","timestamp":"2023-07-29 08:33:50"} 
[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesEnemyEngaged {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","uniqueUid":"130404-0000451454","timestamp":"2023-07-29 08:33:50"} 
[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesEnemyEngaged {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","uniqueUid":"130024-0000451454","timestamp":"2023-07-29 08:33:50"} 
[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesEnemyEngaged {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","uniqueUid":"130024-0000C51454","timestamp":"2023-07-29 08:33:50"} 
[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesEnemyEngaged {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","uniqueUid":"130024-0001C51454","timestamp":"2023-07-29 08:33:50"} 
[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesEnemyEngaged {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","uniqueUid":"127119-0000C51454","timestamp":"2023-07-29 08:33:51"} 
[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesEnemyEngaged {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","uniqueUid":"127124-0000C51454","timestamp":"2023-07-29 08:33:51"} 
[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesEnemyEngaged {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","uniqueUid":"127124-0000451454","timestamp":"2023-07-29 08:33:51"} 
[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesEnemyKilled {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","uniqueUid":"130024-0000451454","timestamp":"2023-07-29 08:33:56"} 
[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesEnemyKilled {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","uniqueUid":"130024-0000C51454","timestamp":"2023-07-29 08:33:57"} 
[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesEnemyKilled {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","uniqueUid":"127124-0000C51454","timestamp":"2023-07-29 08:33:57"} 
[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesEnemyKilled {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","uniqueUid":"127124-0000451454","timestamp":"2023-07-29 08:33:57"} 
[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesEnemyKilled {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","uniqueUid":"130024-0001C51454","timestamp":"2023-07-29 08:33:57"} 
[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesEnemyKilled {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","uniqueUid":"130024-0001451454","timestamp":"2023-07-29 08:33:57"} 
[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesCreateNewActiveChainPull {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","activePullAverageHPPercent":26.53719463857833,"chainPullDetectionHPPercent":30} 
[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesEnemyEngaged {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","uniqueUid":"127119-0001451454","timestamp":"2023-07-29 08:33:58"} 
[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesEnemyKilled {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","uniqueUid":"127119-0000C51454","timestamp":"2023-07-29 08:33:59"} 
[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesEnemyKilled {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","uniqueUid":"130522-0005451454","timestamp":"2023-07-29 08:33:59"} 
[2023-07-29 21:07:14] local.DEBUG:   CreateRouteBodyDungeonRouteBuilderLogging::buildKillZonesEnemyKilled {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","uniqueUid":"127119-0001451454","timestamp":"2023-07-29 08:34:06"} 
[2023-07-29 21:07:14] local.INFO:    - DungeonRouteBuilderLogging::createPullStart {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","killZoneIndex":6} 
[2023-07-29 21:07:14] local.INFO:    -- DungeonRouteBuilderLogging::createPullFindEnemyForGuidStart {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","killZoneIndex":6,"guid":"127119-0001451454"} 
[2023-07-29 21:07:14] local.INFO:    --- DungeonRouteBuilderLogging::findUnkilledEnemyForNpcAtIngameLocationStart {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","killZoneIndex":6,"guid":"127119-0001451454","npcId":127119,"ingameX":761.1,"ingameY":-1835.1,"preferredGroups":[]} 
[2023-07-29 21:07:14] local.DEBUG:   --- DungeonRouteBuilderLogging::findClosestEnemyAndDistanceFromList {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","killZoneIndex":6,"guid":"127119-0001451454","npcId":127119,"ingameX":761.1,"ingameY":-1835.1,"preferredGroups":[],"enemiesCount":22,"considerPatrols":false} 
[2023-07-29 21:07:14] local.DEBUG:   --- DungeonRouteBuilderLogging::findClosestEnemyAndDistanceFromListPriority {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","killZoneIndex":6,"guid":"127119-0001451454","npcId":127119,"ingameX":761.1,"ingameY":-1835.1,"preferredGroups":[],"killPriority":0,"enemyCount":22} 
[2023-07-29 21:07:14] local.DEBUG:   --- DungeonRouteBuilderLogging::findClosestEnemyAndDistanceFromListFoundEnemy {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","killZoneIndex":6,"guid":"127119-0001451454","npcId":127119,"ingameX":761.1,"ingameY":-1835.1,"preferredGroups":[]} 
[2023-07-29 21:07:14] local.DEBUG:   --- DungeonRouteBuilderLogging::findClosestEnemyAndDistanceFromListResult {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","killZoneIndex":6,"guid":"127119-0001451454","npcId":127119,"ingameX":761.1,"ingameY":-1835.1,"preferredGroups":[],"enemyId":28151,"closestEnemyDistance":5.758920463194053} 
[2023-07-29 21:07:14] local.DEBUG:   --- DungeonRouteBuilderLogging::findUnkilledEnemyForNpcAtIngameLocationEnemyFound {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","killZoneIndex":6,"guid":"127119-0001451454","npcId":127119,"ingameX":761.1,"ingameY":-1835.1,"preferredGroups":[],"enemyId":28151,"closestEnemyDistance":5.758920463194053} 
[2023-07-29 21:07:14] local.INFO:    --- DungeonRouteBuilderLogging::findUnkilledEnemyForNpcAtIngameLocationEnd {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","killZoneIndex":6,"guid":"127119-0001451454","npcId":127119,"ingameX":761.1,"ingameY":-1835.1,"preferredGroups":[],"elapsedMS":3.8781} 
[2023-07-29 21:07:14] local.DEBUG:   -- DungeonRouteBuilderLogging::createPullEnemyAttachedToKillZone {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","killZoneIndex":6,"guid":"127119-0001451454","npcId":127119,"ingameX":761.1,"ingameY":-1835.1} 
[2023-07-29 21:07:14] local.INFO:    -- DungeonRouteBuilderLogging::createPullFindEnemyForGuidEnd {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","killZoneIndex":6,"guid":"127119-0001451454","elapsedMS":5.2941} 
[2023-07-29 21:07:14] local.DEBUG:   - DungeonRouteBuilderLogging::createPullInsertedEnemies {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","killZoneIndex":6,"enemyCount":1} 
[2023-07-29 21:07:14] local.INFO:    - DungeonRouteBuilderLogging::createPullEnd {"correlationId":"394b4031-984c-40ff-9575-404b7bbc8e7f","killZoneIndex":6,"elapsedMS":20.7491} 

In short, you pulled a bunch of enemies, hammered most of them dead/down, pulled another enemy 7 seconds after you engaged the last of the pack. Then before this first pack died, you killed this enemy. As a result, a new pull was created and that's now pull 6. Once the original pull died fully it was created and that was pull 7. This is simply a chainpull and there's really nothing I can do about it without making everything really complicated with exceptions etc. The only thing I did change was that if there's a chainpull killed before the original pull, I defer creating the pull until the original pull is fully dead. In the new situation pull 6 will be the original big pull, pull 7 will be the chainpulled enemy.

One potential thing I can do is if a chain pull is killed BEFORE the original group, is it really a chainpull? May as well merge it with the original pull then.

image

@Wotuu
Copy link
Contributor Author

Wotuu commented Jul 30, 2023

Ok so while writing that down I figured out, it DOES make sense that if you chain pull something, but end up killing it before the original group, it ain't really a chain pull. So implementing that logic and merging the pulls instead landed me here, I think I'll keep this behaviour. Seems to make sense.

image

Wotuu added a commit that referenced this issue Jul 30, 2023
…pull now just merges the pulls together.

If you killed a 2nd group before you killed the 1st group, you didn't chain pull but did a deferred big pull really.
@Wotuu
Copy link
Contributor Author

Wotuu commented Jul 31, 2023

image

Captain Jolly is not picked up. Freehold Deckhands are never picked up either.

Edit: The Freehold Deckhands had the wrong ID, that needs to be corrected. Then it DOES pick them up properly. Captain Jolly is never engaged so he's never killed either.

image

@Wotuu
Copy link
Contributor Author

Wotuu commented Jul 31, 2023

image

Pull 10 lacks one enemy that is included in pull 15? Should pull 10 not be a chain pull and split up?

@Wotuu
Copy link
Contributor Author

Wotuu commented Jul 31, 2023

image

Pull 11 has an odd enemy on the bottom right.

@Wotuu
Copy link
Contributor Author

Wotuu commented Aug 4, 2023

image

This was achieved by solving #1879 .

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
auto route creator Generating routes from combat logs. bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant