Commit Graph

54 Commits

Author SHA1 Message Date
Spp 55ce180f28 Core/Logging: Add Asyncronous logging with Loggers ("What to log") and Appenders ("Where to log") system. Will allow to select to full log some parts of core while others are not even logged.
- Logging System is asyncronous to improve performance.
- Each msg and Logger has a Log Type and Log Level assigned. Each msg is assigned the Logger of same Log Type or "root" Logger is selected if there is no Logger configured for the given Log Type
- Loggers have a list of Appenders to send the msg to. The Msg in the Logger is not sent to Appenders if the msg LogLevel is lower than Logger LogLevel.
- There are three (at the moment) types of Appenders: Console, File or DB (this is WIP, not working ATM). Msg is not written to the resource if msg LogLevel is lower than Appender LogLevel.
- Appender and Console Log levels can be changed while server is active with command '.set loglevel (a/l) name level'

Explanation of use with Sample config:

Appender.Console.Type=1       (1 = Console)
Appender.Console.Level=2      (2 = Debug)

Appender.Server.Type=2        (2 = File)
Appender.Server.Level=3       (3 = Info)
Appender.Server.File=Server.log

Appender.SQL.Type=2           (2 = File)
Appender.SQL.Level=1          (1 = Trace)
Appender.SQL.File=sql.log

Appenders=Console Server      (NOTE: SQL has not been included here... that will make core ignore the config for "SQL" as it's not in this list)

Logger.root.Type=0            (0 = Default - if it's not created by config, server will create it with LogLevel = DISABLED)
Logger.root.Level=5           (5 = Error)
Logger.root.Appenders=Console

Logger.SQL.Type=26            (26 = SQL)
Logger.SQL.Level=3            (2 = Debug)
Logger.SQL.Appenders=Console Server SQL

Logger.SomeRandomName.Type=24 (24 = Guild)
Logger.SomeRandomName.Level=5 (5 = Error)
Loggers=root SQL SomeRandomName

* At loading Appender SQL will be ignored, as it's not present on "Appenders"

* sLog->outDebug(LOG_FILTER_GUILD, "Some log msg related to Guilds")
  - Msg is sent to Logger of Type LOG_FILTER_GUILD (24). Logger with name SomeRandomName is found but it's LogLevel = 5 and Msg LogLevel=2... Msg is not logged

* sLog->outError(LOG_FILTER_GUILD, "Some error log msg related to Guilds")
  - Msg is sent to Logger of Type LOG_FILTER_GUILD (24). Logger with name SomeRandomeName is found with proper LogLevel but Logger does not have any Appenders assigned to that logger... Msg is not logged

* sLog->outDebug(LOG_FILTER_SQL, "Some msg related to SQLs")
  - Msg is sent to Logger SQL (matches type), as it matches LogLevel the msg is sent to Appenders Console, Server and SQL
    - Appender Console has lower Log Level: Msg is logged to Console
    - Appender Server has higher Log Level: Msg is not logged to file
    - Appender SQL has lower Log Level: Msg is logged to file sql.log

* sLog->outDebug(LOG_FILTER_BATTLEGROUND, "Some msg related to Battelgrounds")
  - Msg is sent to Logger root (Type 0) as no Logger was found with Type LOG_FILTER_BATTLEGROUND (13). As Logger has higher LogLevel msg is not sent to any appender

* sLog->outError(LOG_FILTER_BATTLEGROUND, "Some error msg related to Battelgrounds")
  - Msg is sent to Logger root (Type 0) as no Logger was found with Type LOG_FILTER_BATTLEGROUND (13). Msg has lower LogLevel and is sent to Appender Console
    - Appender Console has lower LogLevel: Msg is logged to Console
2012-08-03 14:20:18 +02:00
Vincent-Michael 634b3645d5 Core/Misc: Use proper headers to optimize compile 2012-07-30 05:38:40 +02:00
Shauren be5f0b0f47 Core/Scripts: Fixed crash in mob_phase_hunterAI, this entire script is crappy and needs rewrite anyway. 2012-06-09 22:50:56 +02:00
Shauren 1851a2e9e3 Scripts: Replaced calls to ForcedDespawn with DespawnOrUnsummon (calls appropriate AI hooks in case of temporary summons) and made ForcedDespawn private 2012-04-24 16:53:37 +02:00
Machiavelli bc96df1aae Core/Shared: Move container functions to shared project under Trinity::Container namespace. Also implement RandomResizeList which takes a predicate function as parameter.
Core/ScriptedAI: Extend SummonList::DoAction to take a predicate function as parameter and allow specifying a maximum number of units to be selected.
2012-04-08 17:40:05 +02:00
Gyx a1c4786ba0 Core/Script: Code style and some rewriting.
MoveInLineOfSight(Unit* unit) -> MoveInLineOfSight(Unit* who)

Signed-off-by: Gyx <2359980687@qq.com>
2012-04-01 19:56:41 +08:00
Gyx 391d68be20 Core/Script: Code style.
WaypointReached(uint32 i) -> WaypointReached(uint32 waypointId)
WaypointReached(uint32 uiPointId) -> WaypointReached(uint32 waypointId)
WaypointReached(uint32 /*point*/) -> WaypointReached(uint32 /*waypointId*/)
WaypointReached(uint32 uiI) -> WaypointReached(uint32 waypointId)
WaypointReached(uint32 /*i*/) -> WaypointReached(uint32 waypointId)
WaypointReached(uint32 uiWPointId) -> WaypointReached(uint32 waypointId)
WaypointReached(uint32 /*wp*/) -> WaypointReached(uint32 waypointId)
WaypointReached(uint32 /*point*/) -> WaypointReached(uint32 waypointId)

Signed-off-by: Gyx <2359980687@qq.com>
2012-03-29 15:44:24 +08:00
Gyx a20fa23ea6 Core/Script: Code style and remove unused core.
Signed-off-by: Gyx <2359980687@qq.com>
2012-03-28 15:15:48 +08:00
Gyx d8b4bc590a Core/Script: Code style and remove unused core.
Signed-off-by: Gyx <2359980687@qq.com>
2012-03-16 21:41:15 +08:00
Gyx bef1b0c402 Core/Script: Code style.
Signed-off-by: Gyx <2359980687@qq.com>
2012-03-16 19:40:57 +08:00
Gyx 76c18e00c7 Core/Script: Clean-Up in Scripts.
GameObject* pGO -> GameObject* go

Signed-off-by: Gyx <2359980687@qq.com>
2012-03-16 19:28:10 +08:00
Gyx e8f414e143 Core/Script: Clean-Up in Scripts.
Creature* c -> Creature* creature

Signed-off-by: Gyx <2359980687@qq.com>
2012-03-14 09:20:36 +08:00
Spp f495e0efe4 Warning fixes and some random cleanup here and there 2012-03-07 14:09:18 +01:00
Shocker 08be716ef8 Core/Misc: Rename UNIT_STAT_* enums to UNIT_STATE_* 2012-02-03 19:02:17 +02:00
kiper 8299627ed9 Update headers for 2012. HAPPY NEW YEAR!!! 2012-01-01 00:32:13 +01:00
Discover- 275aa8a7d8 DB/Miscellaneous: Implement humans transforming into worgens at night inside Pyrewood Village.
And yet again some silly typo's, sorry guys.

Closes #3062
2011-12-25 01:21:09 +01:00
Discover- c3e527da6d Core/Quests: Script quest Captain Tyralius.
Closes #3091.
2011-12-25 00:36:17 +01:00
Bootz 5b4c7783c2 REPO: Code-style clean-ups
* Fixed pMap->map
* Fixed pInstance->instance
* Fixed pInsta->instance
* Fixed pQuest->quest
* Fixed pWho->who
* Fixed pTarget->target
* Fixed pGo->go

~DEVNOTES: Handlers/QuestHandler.cpp still needs to be cleaned...
2011-10-07 19:45:43 -05:00
Bootz f1ccb83dc0 REPO: Code-style change
* Fixed pUnit-unit
2011-10-07 10:48:56 -05:00
Spp b16d2245bb Cosmetic: Multiple cosmetic changes
- Added missing space to 'if', 'for', 'while' and 'switch' when it's followed by '('
- Added missing space after a comma and remove space before comma (with some exceptions)
- Remove trailing spaces
- Convert tab to spaces

Note: Only affects files with extension "cpp" and "h" under /src/server
2011-09-29 12:43:05 +02:00
Spp 9e517c963b Cosmetic: Replace "* )" with "*)" and "* /*" with "* /*" 2011-09-29 09:32:55 +02:00
Shocker 7afb179185 Misc/Util: Add a template function for returning a random element from any container 2011-09-15 21:28:40 +03:00
Spp af05915b9e [Cosmetic] Apply codestyle "XXX * " and "XXX *" changed to "XXX* " (with some exceptions) 2011-09-15 14:12:57 +02:00
QAston b0fe236265 Core: Use new SpellInfo class in core. Sadly, this commit is not compatibile with some of the custom code. To make your code work again you may need to change:
*SpellEntry is now SpellInfo
*GetSpellProto is now GetSpellInfo
*SpellEntry::Effect*[effIndex] is now avalible under SpellInfo.Effects[effIndex].*
*sSpellStore.LookupEntry is no longer valid, use sSpellMgr->GetSpellInfo()
*SpellFunctions from SpellMgr.h like DoSpellStuff(spellId) are now: spellInfo->DoStuff()
*SpellMgr::CalculateEffectValue and similar functions are now avalible in SpellEffectInfo class.
*GET_SPELL macro is removed, code which used it is moved to SpellMgr::LoadDbcDataCorrections
*code which affected dbc data in SpellMgr::LoadSpellCustomAttr is now moved to LoadDbcDataCorrections
2011-07-26 23:09:28 +02:00
click db045c40ad Core: Cleaning up hungarian notation - Phase5: pKiller -> killer 2011-07-02 23:58:05 +02:00
click 169f5da8c3 Core: Cleaning up hungarian notation - Phase2: pPlayer -> player 2011-07-02 22:52:42 +02:00
click f91ee24184 Core: Start cleaning up hungarian notation - Phase1: pCreature -> creature 2011-07-02 22:18:03 +02:00
Spp- 6fd41ae50e Scripts: Reorder file names in Commands/CMakeList file and cosmetic changes in all scripts 2011-06-30 14:24:56 +02:00
click 158966dc79 Core: Codestyle cleanup 2011-06-11 22:35:29 +02:00
leak 1003f30448 Add spaces after commas 2011-04-29 20:47:02 +02:00
Shauren 2f79b0f266 Core: Removed all double (and more) empty lines 2011-03-21 10:52:14 +01:00
Machiavelli 5236bf4511 Fix build with scripts included 2011-02-20 21:19:32 +01:00
Machiavelli c1445cd475 Fix build with scripts included 2011-02-20 21:07:03 +01:00
Machiavelli 957c69de83 Update copyright note for 2011.
Happy new year.
2011-01-01 15:01:13 +01:00
Shauren 928443d899 Core: Removed more operator workarounds for ACE_Singleton (missed previously because of inconsistent naming)
--HG--
branch : trunk
2010-12-23 23:25:44 +01:00
Shauren 82f45966fc Core/Unit: Renamed addUnitState/hasUnitState/clearUnitState to AddUnitState/HasUnitState/ClearUnitState
Core/Vehicles: Allow the vehicle to always damage the passenger (removed unneded dbc hacks from scripts)

--HG--
branch : trunk
2010-12-17 13:43:24 +01:00
linencloth 8fae0c176d Core/Units: Rename and change Get/SetVisibility to use a bool value instead of an unnecessary enum
Also replace some SetVisibility hacks to directly call UpdateObjectVisibility

--HG--
branch : trunk
2010-11-16 01:13:04 +01:00
azazel f500ef201b Scripts/Texts:
* fix script texts in various locations (thanks TerrorBringer for the heads up). Closes issue #2055. Closes issue #3087.
* cleanup world_script_texts.sql file (remove spaces, order entries)
Scripts/Misc:
* remove obsolete random seed initialization from scripts
* fix some warnings in scripts
* some cleanup in chat_log.cpp

--HG--
branch : trunk
2010-09-05 02:16:58 +06:00
Spp 405f312918 Core: Fix more warnings
--HG--
branch : trunk
2010-08-30 15:25:15 +02:00
Liberate f67441b863 Fixes gossip scripts or points of interests of npc's with a Scriptname assigned to them.
This fixes guards in Major cities.
Thanks to Aokromes for testing.
Thanks to click for converting all the scripts to work with this change.

--HG--
branch : trunk
2010-08-29 00:57:51 +02:00
Supabad 6036166716 Core/scripts: core support for escort Mark V is Alive!
Thanks to Schmoozerd from sd2

--HG--
branch : trunk
2010-08-26 11:36:26 +02:00
azazel 341e6303ef Core:
* add helping methods for manipulating unit's health and use it where applicable
* fix some conversion warnings and cleanup code (formatting, CRLF, tabs to spaces)

--HG--
branch : trunk
2010-08-26 01:20:57 +06:00
Spp 9e4357c9ad Core: Fix more warnings
--HG--
branch : trunk
2010-08-24 14:44:56 +02:00
azazel 399e35f8f5 Core:
* fix "warning C4305: 'initializing' : truncation from 'double' to 'float'" warnings
* fix some other warnings here and there

--HG--
branch : trunk
2010-08-22 23:46:40 +06:00
azazel e5c797cef6 * Fix remaining errors in scripts project
* Remove now obsolete ScriptedInstance.h file

--HG--
branch : trunk
2010-08-09 00:56:10 +06:00
azazel 590199d8e1 * Rename InstanceData to InstanceScript
* Rename *mgr to their new names in scripts project
* Mass convert all the scripts (NEEDS THOROUGH TESTING, because it was done automatically) Please, report bugs on issue tracker.

--HG--
branch : trunk
rename : src/server/game/Instances/InstanceData.cpp => src/server/game/Instances/InstanceScript.cpp
rename : src/server/game/Instances/InstanceData.h => src/server/game/Instances/InstanceScript.h
2010-08-08 22:54:58 +06:00
QAston d666ba26c1 *Thread safe player searcher in scripts.
--HG--
branch : trunk
2010-07-30 15:51:07 +02:00
Xanadu 79622802f3 Merge. Revision history for source files should be all back now.
--HG--
branch : trunk
rename : sql/CMakeLists.txt => sql/tools/CMakeLists.txt
rename : src/server/game/Pools/PoolHandler.cpp => src/server/game/Pools/PoolMgr.cpp
rename : src/server/game/Pools/PoolHandler.h => src/server/game/Pools/PoolMgr.h
rename : src/server/game/PrecompiledHeaders/NixCorePCH.cpp => src/server/game/PrecompiledHeaders/gamePCH.cpp
rename : src/server/game/PrecompiledHeaders/NixCorePCH.h => src/server/game/PrecompiledHeaders/gamePCH.h
2010-07-20 02:49:28 +02:00
click 6f393be15a Update GPL-licensing information on scripts (now with the proper bling-bling headers!)
If any more scriptfiles are missing their respective header, let us know please...

--HG--
branch : trunk
2010-07-06 03:27:41 +02:00
click 8bdd082aa1 Adjust to use correct timeframe for script-copyrights
--HG--
branch : trunk
2010-07-02 16:13:40 +02:00