This will prevent case when expansion set to high for supported client
in config and account have also too high expansion setting.
Client in like case receive too high expnasion and reject connection
because it think that have not installed expansion for connection account.
This possible for example for account case when single realmd used for
diff client versions and account have high expansion setting for most
recent client support. And in same time mamngos.conf for specific realm
have wrong Expansion value.
Note that script is implemented for GOSSIP_OPTION_GOSSIP only (as not expected needed for other gossip options).
Also add a few more startup checks for LoadGossipMenuItems with check for basic errors in fields
As result, gossip for GO is now possible. Moved related data structures and remove useless from code.
Please note that after some time, table npc_gossip will be fully removed (use menuId in _template in relation to gossip_menu as replacement).
Special thanks to GriffonHeart for help with research, discussions and ideas of code and thanks to Vladimir for helpful input.
Signed-off-by: NoFantasy <nofantasy@nf.no>
* Also, some minor things:
- Remove duplicate sWorldLog define.
- Add sRealmList macro for RealmList::Instance().
- Use sLog macro in scripting log functions.
And make related renames in code for types, variables and functions.
To make more clear difference achievement createria type from old achievment criteria data type
in DB and code.
those eventindexes will then be used by the battleground-code to decide
which creature belongs to which objective
for example all creatures in alteracvalley which are standing around a tower
will belong to one eventindex then.. the eventindex will be defined through the code
and must be proper documented for db-devs
* Base at TOM_RUS reseach save/load character specific account data in new table `character_account_data`
* Move its in sql update from `account_data` to new table.
* For client packets that can be send in loggined state or just after logout but assocualted
with recently logout character add new login status STATUS_LOGGEDIN_OR_RECENTLY_LOGGOUT
* Store low guid for loggedin player or recently logout into WorldSession.
Added config options to set count of eventlog records stored in DB.
Attached SQL files will DROP existing and create new tables. Make sure you create backup (if you need old data).
Renamed few variables in Guild class.
Signed-off-by: Triply <triply@getmangos.com>
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>
* Added a new SQL table, spell_proc_item_enchant, for "custom" ppmRates on Item Enchants that do not use auras.
With table data this must fix ppm for effect from 8033 and ranks enchanting, and item 6947/10918 and ranks enchanting.
* Implemented SPELLMOD_FREQUENCY_OF_SUCCESS (26).
That must fix work talent 14113, spell 32645 with ranks, glyph 41094 and item set effect 64917 in frequency part.
Thanks to MaS0n as author alternative patch that partly used in this patch.
Thanks to Thenecromancer as author alternative patch that ideas inspire MaS0n's patch writing and then this patch also.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
After switch to 3.x.x all data get explcitly from ClassMask fields in spell.dbc
and no need in custom values.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
* GM.InGMList replaced by GM.InGMList.Level with default value 3 (visible any gm levels)
* GM.InWhoList replaced by GM.InWhoList.Level with default value 3 (visible any gm levels)
Update mangosd.conf if used non default value for old GM.InGMList and GM.InWhoList
* Implement new config options for minimal player/pet/charter name length (2 by default)
* Better error reporting at problems in names.
* Add check from max pet/charter name length (same as for player names at client side)
* Create new monster move field in Creature class and use it in all cases when expected use MONSTER_MOVE_* flags.
* Store and use MOVEMENTFLAG_* values in field in MovementInfo structure of Player class.
* Cleanups and fix related code.
NOTE: DB in creature_addon store values similar MONSTER_MOVE_* flags, scritps also expected set only this flags.