Trinitycore: Blink should use movemaps instead of vmap raycast hacks

Created on 8 Jul 2017  路  6Comments  路  Source: TrinityCore/TrinityCore

Description:

Blink should use moveAlongSurface or similar recast methods to blink on terrain. As detail navmesh only stores low quality height values, heights should be fixed by a vmap query at the final position coordinate or through some implementation that traverses MCVT chunk of the wow terrain to get the height at a specified x/y coordinate.

Current behaviour:

The blink spell uses a series of extremely ugly vmap hacks to compute the blinked position instead of moving along the nav mesh.

Expected behaviour:

CHANGEME Tell us what should happen instead.

Steps to reproduce the problem:

  1. CHANGEME Step 1 include entries of affected creatures / items / quests with a link to the relevant wowhead page.
  2. Step 2
  3. Step 3

Branch(es):

CHANGEME 3.3.5, master or both

TC rev. hash/commit:

TrinityCore rev. fc8f0fb 2017-07-08 20:31:51 +0200 (master branch) (Win64, Release, Static)

TDB version: CHANGEME Version of the TrinityCore database

Operating system: CHANGEME OS

Comp-Core Sub-MapMMapVmaps Sub-Spells

Most helpful comment

Sorry for necroposting but since this is still open...

I agree that the current blink implementation is hacky, but I disagree that it is because of the raw heightmap data. Instead it is because of the way you do your height tests.

Moving along the navmesh would be overkill, you literally need to take the players position and direction, add X yards forward and heighttest that area.

I have a similar topic open for AC over here, I would prefer not retyping everything here so please take a look at my suggestion for how to improve on height testing: https://github.com/azerothcore/forum/issues/24

All 6 comments

Thats exactly the kind of vmap hack shit which this issue is about

Sorry for necroposting but since this is still open...

I agree that the current blink implementation is hacky, but I disagree that it is because of the raw heightmap data. Instead it is because of the way you do your height tests.

Moving along the navmesh would be overkill, you literally need to take the players position and direction, add X yards forward and heighttest that area.

I have a similar topic open for AC over here, I would prefer not retyping everything here so please take a look at my suggestion for how to improve on height testing: https://github.com/azerothcore/forum/issues/24

@Ovahlord is this issue related to Core/Objects: MovePositonToFirstCollision will now use detour raycasts to determine terrain obstacles ?

It's actually exactly solving this.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Keader picture Keader  路  3Comments

jerbookins picture jerbookins  路  3Comments

Rochet2 picture Rochet2  路  3Comments

DDuarte picture DDuarte  路  3Comments

Lopfest picture Lopfest  路  3Comments