View Single Post
  #11  
Old 05-01-2006, 02:54 AM
jake13jake jake13jake is offline
Former Classic Staff
jake13jake's Avatar
Join Date: Dec 2002
Location: Northwest Vermont
Posts: 1,452
jake13jake will become famous soon enough
Yea, the game server simply lacks a playertouchsme-like event handler that would be necessary for the proper implementation of the current hit system on Classic.

The current damage started using the playertouchsme event handler. The problem we encountered was that playertouchsme can be called serverside when the player can be up to one tile away from the damage field.

Since then... it started making me think that something was messed up with playertouchsme. Stefan wouldn't modify the event handler call in any way that would make it work. Since then, I've been lobbying for two additional event handlers, both serverside and clientside. One for when the player enters the base area of an NPC, and one for when the player exits the base area of an NPC, both with an accompanying script function that would render the coordinates and shape of the NPC immutable (and also enable these event handlers, as there is an underlying problem that an NPC's coordinates and shape can be very dynamic).

The only reason the new damage system sucks compared to the old serverside damage system is that it's based on a time value which had to be disabled because of the playertouchsme problem. With the requested event handlers, we could implement the time factor. Right now the script has been (hopefully temporarily) modified to send damage only at the moment the player slashes. Otherwise we'd be able to detect it for all times without destroying the server.

Storm's damage system called the server twice to overcome lag. Once at the start of the swing and once at the end of the swing. From a scripting standpoint, however, the new one is much improved, and if Stefan will give us the event handlers we need, it would be much improved from an implementation standpoint as well.
Reply With Quote