Enemy.update(playerPosition, deltaTime, walls) never reads walls or deltaTime. Movement is position += normalize(target - position) * speed with a comment "Simple collision check (can be improved)" and no ray/AABB test against the maze wall meshes.
Enemies therefore walk through walls to the player. deltaTime is also ignored, so movement is frame-count based (speed units per update call) rather than time-based — at a high tick rate they close distance faster.
Source: projects/spikersoft/src/app/_components/_games/dungeon-crawler/enemy.ts (update). Characterization tests pin the current through-walls / in-range stand-still behaviour.
`Enemy.update(playerPosition, deltaTime, walls)` never reads `walls` or `deltaTime`. Movement is `position += normalize(target - position) * speed` with a comment "Simple collision check (can be improved)" and no ray/AABB test against the maze wall meshes.
Enemies therefore walk through walls to the player. `deltaTime` is also ignored, so movement is frame-count based (`speed` units per `update` call) rather than time-based — at a high tick rate they close distance faster.
Source: `projects/spikersoft/src/app/_components/_games/dungeon-crawler/enemy.ts` (`update`). Characterization tests pin the current through-walls / in-range stand-still behaviour.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Enemy.update(playerPosition, deltaTime, walls)never readswallsordeltaTime. Movement isposition += normalize(target - position) * speedwith a comment "Simple collision check (can be improved)" and no ray/AABB test against the maze wall meshes.Enemies therefore walk through walls to the player.
deltaTimeis also ignored, so movement is frame-count based (speedunits perupdatecall) rather than time-based — at a high tick rate they close distance faster.Source:
projects/spikersoft/src/app/_components/_games/dungeon-crawler/enemy.ts(update). Characterization tests pin the current through-walls / in-range stand-still behaviour.Fixed in
spikersoft-angularPR #823 (a0f0ccd9). Closing.