Azerothcore-wotlk: Errors present in all instances

Created on 9 Aug 2020  路  21Comments  路  Source: azerothcore/azerothcore-wotlk

Errors present in all instances

CURRENT BEHAVIOUR:

When there is no player in the instance, the creature does not return to its original position

EXPECTED BLIZZLIKE BEHAVIOUR:

When there is no player in the example, the living creature should immediately return to its original position

STEPS TO REPRODUCE THE PROBLEM:

Enter the instance, Make creatures follow and attack you, leaving instances, enter the instance again to view the biological position.

  1. Enter the instance
    image
  2. Make creatures follow and attack you, leaving instances
    image
  3. Leave the instance and enter the instance again to see the biological location.
    image
    You can see that the creature is still in position when you left the instance is not moving
EXTRA NOTES:
AC HASH/COMMIT:

https://github.com/azerothcore/azerothcore-wotlk/commit/3cce44469aaf46a9884c276e29dc262c5722f9bb

OPERATING SYSTEM:

Windows 7/10

MODULES:
OTHER CUSTOMIZATIONS:


Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

Confirmed

All 21 comments

confirm

Have you enabled the config option to have all creatures active at all time?

Without this option, ALL creatures will stop moving as soon as no player is in line of sight and it's extremely unrealistic (and not blizzlike imo). This is something we discussed with the long gone Stoabrogga, so he made that config option. It will use a bit more memory/cpu if enabled and may fix your issue

I'll try

thank you
PreloadAllNonInstancedMapGrids = 1
SetAllCreaturesWithWaypointMovementActive = 1

Is that config Default ON?
If so I think it would be better to have it Default OFF (So that they always return to home pos)

The default is off

So by default they do return to home?

It is found that only opening "SetAllCreaturesWithWaypointMovementActive = 1" can solve the problem

The default is 0

Okay, then we should make it default = 1 so that this bug does not occur...

If set to 1, it consumes some CPU resources

It is recommended to set the default to 1

It can solve a lot of mistakes

yes. I will change default later

no, don't, wait a little :D

Stoabrogga was against enabling this by default. I was for enabling it but he said it would eat more resources (obviously) and that Blizzard probably had it MUCH better handled to save resources.

If you enable this conf, it means that ALL mobs in the world will be active once loaded, at all time.
Example: if a player visits a zone rarely visited like https://wow.gamepedia.com/Jaguero_Isle he will load all the mobs here. Then they will constantly patrol even if no player comes here. And since the grids never unload, they will take resources forever until restart.

So I'm not sure what to do.

@yehonal @rochet2 what do you think guys?

Blizzard saves NPC's for 15 minutes, that way they let them return

then we'd need that

also note that during all those years, almost NOBODY noticed the mobs stopped when out of sight lol

We need to implement the grid unload I guess

Solution 1: GridUnload + SetAllCreaturesWithWaypointMovementActive means: the creatures are always active except if the grid is unloaded. So, whenever no player is visiting that zone for the time specified inside the GridUnload conf, that zone will be unloaded, but the system has the time to fix the creature movement. It can also help to reduce the RAM on low-resource systems.

Solution2: However, for people that want to keep the GridUnload disabled, we could also implement a delay for stopping the creature's movements when a player left the zone. Otherwise, the issue will be still there if you want to keep both SetAllCreaturesWithWaypointMovementActive and GridUnload disabled. Maybe this last one is the fastest and easiest solution

Both should be implemented IMHO

Is there still the conf to enable the GridUnload system?

Is there still the conf to enable the GridUnload system?

Nope, It must be implemented and it's not easy to do it. The solutions 2 is definitely faster

yeah solution 2 would allow us to put the conf to true by default, and then we'd have a better ingame experience overall

solution 1 is a lot of work and might not even be used on populated servers (like on the old sunwell server aka sunwellcore)

so what do we do with the current issue? :D close?

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Franklampardst picture Franklampardst  路  3Comments

Franklampardst picture Franklampardst  路  4Comments

wowmane picture wowmane  路  3Comments

lineagedr picture lineagedr  路  3Comments

FrancescoBorzi picture FrancescoBorzi  路  3Comments