- Status Closed
- Percent Complete
- Task Type Bug Report
- Category Engine → Combat
-
Assigned To
Thom Talad Andrew Dai - Operating System
- Severity High
- Priority
- Reported Version
- Due in Version Undecided
-
Due Date
Undecided
- Votes 3
- Private
Attached to Project: PlaneShift
Opened by Kaerli Stronwylle - 15.06.2008
Last edited by Talad - 03.06.2020
Opened by Kaerli Stronwylle - 15.06.2008
Last edited by Talad - 03.06.2020
FS#1711 - NPC hitting through walls
Alright, the sneaker Dlayo killed Kaerli from around the corner a little while backā¦and apparently killed Lossoph through a wall too. Can someone deal with his little wallhacking Klyros rump? :P
ID | Project | Summary | Priority | Severity | Assigned To | Progress | |
---|---|---|---|---|---|---|---|
4564 | PlaneShift | Medium |
ID | Project | Summary | Priority | Severity | Assigned To | Progress | |
---|---|---|---|---|---|---|---|
6792 | PlaneShift | FS#6792 - List of Combat Bugs | Medium | Davide Vescovini |
Closed by Talad
03.06.2020 21:06
Reason for closing: Will not fix
Additional comments about closing:
03.06.2020 21:06
Reason for closing: Will not fix
Additional comments about closing:
Will not fix in PSLegacy, report for
PSUnreal if present.
marking new, but the npcclient does not seem to do a good job of knowing where things are on the maps
This is pretty much the same as the "magic has no collision detection" bug, the server combat manager does not load the maps.
I found this when I came here to report the same bug. This issue is present everywhere, e.g. fighting rats through the warehouse wall, being attacked while sitting inside a building, and so on.
Steven Schwartfeger:
If the NPCs are not loading the maps, how do they stop when they get to a wall? Or is it just one part of the NPCs that ignore the maps? It seems that NPCs already have the map layout available to them, so it should be doable to make the attacking check this as well.
Qia: the server combat manager The npcclient acts mostly like a normal client, except some of the checks are not done on it; sends the same sort of 'combat request' messages to the server. The npcclient(s) don't have to be on the same computer as the psserver, they can be anywhere. This hasn't really got anything to do with NPCs, players can hit through walls as well.
This is all IIRC AFAIK and all that, I haven't actually looked at that code lately, so I might have some stuff wrong. But when I did do some work on the server combat manager, there was no access to any map data, other than checking the portal connections list for any range calculations across portals.
well it might be added that the collision detection of the npcclient is extremely broken (or the maps have some problems) the same dlayos can easily get inside walls (you can only see their wings)
Perhaps making walls thicker than the attack range of the NPC or redrawing maps with gaps to keep NPC and player far enough apart to be out of attack range.
Let's ask Talad, and Khaki?
Possibly related to this: The barkeep Allelia Symestria in Kada El's Tavern (Hydlaa_Plaza) greets me when I'm close to the outside wall of tavern although she shouldn't be able to see me.
I guess the best solution would be to have npcclient do the same things as players do: check if they can see the target :). A hitbeam call should be able to tell if there is a mesh in between. However:
- npc collission is already messy. Better to fix other things first
- this may slow down things, if this is not only done on starting the attack
- if not only done on start of an attack, but also on every moment after that, a dlayo that you got mad by stamping on his feet will still keep hitting you through the wall.
- to be fair to the dlayo's, the same fixes should be done for players (who now can do /target kaerli and attack through the wall too, or shoot magic arrows through whole buildings. This would probably slow down not only npcs, but players too.
At least the NPCs are attacking on the RP server. Nothing fights back on the Non-RP.