Commit Graph
246 Commits
Author SHA1 Message Date
Manuel Carrasco d7a7a9800b Battlefield: Make sBattlefieldMgr a pointer. By Subv. 2012-08-20 13:48:47 -04:00
Kandera 16f2c3a48e merge master into wintergrasp and fix build errors. yay me! 2012-08-20 13:34:04 -04:00
Spp 8a1e7dd070 Core/Loading: Re-enable Server loading log 2012-08-16 00:23:44 +02:00
Spp 5746b688fa Core/Logging: Reload Logging options when .reload config is used 2012-08-06 09:30:47 +02:00
Spp 634776e0bc Fix compile under windows 2012-08-03 15:54:54 +02:00
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
Shauren 1fd37ac61b Core/Object: Use updatefield flags extracted from client to determine whether to send or not a field value instead of sending all data to client for non-player objects 2012-07-22 14:20:26 +02:00
QAston 56c3811365 Merge pull request #6685 from mweinelt/master
Core/Battlegrounds: Introduce Arena.RatedUpdateTimer to configure time between checks for matchups in rated arena
2012-06-14 03:26:30 -07:00
Shauren c7775c8d72 Core/Maps: Moved object respawn time storage from global to map level. This removes unneccessary locking since all objects run within its map's thread. 2012-06-07 23:20:57 +02:00
hexa- f89da81406 Core/Battlegrounds: Introduce Arena.RatedUpdateTimer to configure time between checks for rated arena matches. 2012-06-01 21:22:58 +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
Shauren d9451cedd8 Core/World: Add character name data after loading PlayerDump
Closes #3653

Note: Manual changes in database while the server is running are not advised thus not supported
2012-04-03 00:02:58 +02:00
Nay 6e4a4795ad Core/DBLayer: Yet more type fixes 2012-04-02 01:25:07 +01:00
click 55b53f44dc Core: Tell ScriptMgr to reload properly on .reload - thanks to codels for the patch 2012-04-01 19:38:15 +02:00
Shocker b292437989 Merge pull request #5933 from GyxTom/master
Core/Misc: Code style and remove unused define
2012-03-30 14:49:44 -07:00
Nay 92d3548f0b Core/DBLayer: Even more types fixes... 2012-03-29 15:08:17 +01:00
Gyx 5b7493fc66 Core/Misc: Code style and remove unused define.
Signed-off-by: Gyx <[email protected]>
2012-03-29 14:43:34 +08:00
Shocker a08cb234c0 Merge pull request #5918 from GyxTom/master
Core/Misc: Various cleanups
2012-03-28 18:00:42 -07:00
leak a14aa37585 Core/DBLayer: Fix value list from recent changes 2012-03-28 21:34:26 +02:00
leak 7309ee5621 SQL: Auth db data type cleanup logs, realmcharacters, realmlist, uptime / Storage engine switched to InnoDB Note:
As for the redundant `uptime`.`startstring` being removed, this page might be of interest how to generate time strings from unix timestamps
http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_from-unixtime
2012-03-28 19:46:38 +02:00
Gyx a20fa23ea6 Core/Script: Code style and remove unused core.
Signed-off-by: Gyx <[email protected]>
2012-03-28 15:15:48 +08:00
Nay f44e6834df Core/DBLayer: Fix remaining errors in loading world tables and a couple of them in characters database
Also removed World::LoadIp2nation(), it was not doing anything.
Closes #5897
2012-03-28 00:38:24 +01:00
Machiavelli 79a782f143 Core/Misc: Make World::m_stopEvent thread-safe. Note that the 'virtual' keyword in C/C++ is pretty useless for multithreading 2012-03-27 13:19:27 +02:00
leak c6cbe4c77c Core/DBLayer: Convert PAppend() queries to prepared statements No.1 2012-03-25 16:25:06 +02:00
Subv 56fac5e1af Memory: Get rid of some memory leaks, converted FormationMgr back to singleton 2012-03-25 09:25:28 -05:00
Shauren c8bf09d504 Core/DBLayer: Match field type reads in core with data types in db for prepared statements 2012-03-24 16:44:01 +01:00
Shauren dc4a0ec089 Merge pull request #5865 from Elron103/pull-requests4
Core/Spells: Fix loading order and apply custom spell flags correctly
2012-03-24 05:52:35 -07:00
Elron103 7eb473d0b8 Core/Spells: Fix loading order and apply custom spell flags correctly 2012-03-24 13:34:19 +01:00
leak 12e55a04bb Core/DBLayer: Convert PQuery() queries to prepared statements 2012-03-24 01:25:08 +01:00
Spp 0fe4580fe0 Core/Commands: Add support for ip2nation database lookups when using .pinfo command.
This will (when a full database exists) allow for seeing (approximately) which country a player might be from when doing .pinfo <player>
Note: External data required for this patch to work correctly can be found at http://www.ip2nation.com/ip2nation/Download

Signed-off-by: click <[email protected]>
2012-03-23 05:35:32 +01:00
leak 847b4366f3 Core/DBLayer: Convert PExecute() queries to prepared statements 2012-03-19 16:48:08 +01:00
Shauren 09f0a2c04f Core/CreatureTextMgr: Added support for creature_text localization 2012-03-01 22:26:05 +01:00
leak 1ebdc5c19c Core/Warden: Add reload ability for character.warden_action table / Centralize the crypto keys in one header file 2012-02-25 22:06:18 +01:00
Spp 32eab3dca7 Core/Calendar: WIP Calendar. 2012-02-24 20:11:29 +01:00
LiMCrosS 1ef0801037 Core/World: WorldStates must be loaded before Conditions 2012-02-21 01:21:21 -02:00
leak 8e3a4b956e Core/Warden: Base implementation for Warden functionality
Note: The default config file action for clients failing the checks can be changed for each check via the characters.warden_action table

Credits to TOM_RUS
2012-02-19 13:51:16 +01:00
click 5411e1ce52 Core: Clean up whitespace and tabs in the base sourcetree 2012-02-18 16:52:08 +01:00
Subv 9791bb599a Merge pull request #5160 from TrinityCore/dynamic_vmaps
Added Dynamic Vmaps, RE-EXTRACT YOUR VMAPS
2012-02-09 11:17:05 -08:00
Subv2112 93d199f043 Core/Collision: Ported dynamic line of sight patch by Silverice from MaNGOS and
added lots of improvements
Please re-extract vmaps
2012-02-09 13:58:22 -05:00
Matthew Goff 89adbc1778 Add config values to allow ignoring auto accept and auto complete flags on quests. 2012-02-08 20:01:38 -06:00
Shocker 8d7f77eb00 Merge pull request #4616 from kandera/fix_seasonal_quest_reset
Core/Quests: Add implementation of seasonal quest reset
2012-01-04 13:11:34 -08:00
kandera 46fb199ee1 Core/Quests: Add implementation of seasonal quest reset. uses a new table much like character_queststatus_weekly. fixed typo where WEEKLY was WEKLY. Attempt 2 2012-01-04 07:59:32 -05:00
Shocker 0f66a5bd15 Core/Misc: Separate RecordTimeDiff in World::Update for MapMgr and BattlegroundMgr 2012-01-03 21:54:55 +02:00
leak 73f79c41a1 Core/DBLayer: Couple fixes 2012-01-02 20:29:22 +01:00
leak ced346076b Merge pull request #4567 from Kiperr/master
Happy new year!
2011-12-31 16:13:28 -08:00
leak cdbeb42e0f Core/DBLayer: Refactor prepared statement defines to new format (char db) 2012-01-01 01:09:38 +01:00
kiper 8299627ed9 Update headers for 2012. HAPPY NEW YEAR!!! 2012-01-01 00:32:13 +01:00
leak 73cf793e56 Core/DBLayer: Refactor prepared statement defines Note:
The new format for the middle section is a 3-letter upper case abbreviation of the sql command being executed (select -> SEL, update -> UPD, etc.)
{DB}_{SEL/INS/UPD/DEL/REP}_{Summary of data changed}
2011-12-31 20:14:38 +01:00
leak 8adac3f246 Core/DBLayer: Convert PExecute() queries to prepared statements No. 3 2011-12-31 00:32:05 +01:00
Venugh 882ebe2b8e Core/World: Convert Execute to PreparedStatement from Battleground random. 2011-12-27 01:04:12 +01:00