* Use this fucntions in some case.
* Change some packets to form: read fields first check later for better control recieved packets structure.
* Fix CMSG_STAND_STATE_CHANGE packet structure to more correct.
CHECK_PACKET_SIZE was pretty error prone; once it was forgotten mangosd
could crash due to the asserts in ByteBuffer.h. That was exploitable by
malicious players.
Furthermore, there were duplicate checks: Additionally to
CHECK_PACKET_SIZE, the ByteBuffer assertions keept an eye
on not exceeding the packet boundaries - just to crash the server for
sure in such a case.
To prevent memory leaks or other undesirable states, please read in
every handler all variables _before_ doing any concrete handling.
* Make spell 40216 and 42016 casted/remove at aura 40214 apply/remove.
And drop related spell_area possible existed data.
* In general restore apply area limitations to spell casting in GM mode.
This should fix problem that players who logged off during BG are after every
next login into game teleported to BG entry position.
Signed-off-by: ApoC <apoc@nymfe.net>
Implemented 2 way set cache data "version":
* New db_version.cache_id field let set cache data version by DB content creators.
This can be used for content releases by seting some unique value at each release.
This value used by default.
* New mangosd.conf config option let set (overwrite DB value) or use 0 for ignore.
This can be used by serever admin for reset cache at some local changes.
Note: values use at client login and then must be unique for long period time to avoid ignored
at login some long not connected client with old same cache version value.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
* Not all positive spell have SPELL_ATTR_EX_NO_INITIAL_AGGRO (for react at assistance).
Avoid aggro at positive spell without this flag for non frindly target.
* Some cleanups and better checks in IsPositiveEffect.
old problem was that, for example
a single spell couldn't be cast
at aura OR quest (so 2 entries in this table)
.. will be now possible
Signed-off-by: balrok <der-coole-carl@gmx.net>
* Introduced new table character_battleground_data
* Entry point is now stored on BG enter event not join event
* Entry point for dungeons is now correctly set to nearest graveyard
(this prevent well known assert in GetInstance because of porting to already destroyed instance)
* Teleporting from BG correctly restore mount state
* Teleporting from BG correctly restore taxi flight
(in multipath flight you will end up in nearest transition point on the route)
Signed-off-by: ApoC <apoc@nymfe.net>