Commit Graph

700 Commits

Author SHA1 Message Date
treeston
a92bfb5505 Scripts/Commands: Small QoL adjustments
- .debug hostil now shows spawn ID (DBGUID) in addition to current GUID (so you can .go creature to it)
- .npc temp now takes an additional argument before the creature entry that determines whether the spawned creature instantly despawns upon death. Default is instant despawn (current behavior).
- Add .npc evade command.
- Add .pet level command.
- .server shutdown and .server restart now fail with an error message if time is below a config var (GM.ForceShutdownThreshold, default 30s) as long as another player is connected.
    - New commands .server shutdown force and .server restart force bypass this limitation.

(cherry picked from commit 0e1eb460d6)
2016-09-03 13:46:33 +02:00
Shauren
b5fac7abc1 Core: Set default expansion to Legion. 2016-08-30 00:00:33 +02:00
joschiwald
f0224df131 Core/Config: Fixed typos in worldserver.conf.dist 2016-08-27 12:16:19 +02:00
Vincent-Michael
3c6c78da1c Core/Objects: Added check (error log) for possible invalid position for creatures / game objects 2016-08-23 16:58:48 +02:00
Ovalord
79aafd5865 Core/Players: Initial work on demon hunters
* Added starting level and required level config options as well as rbac permission to ignore the requirements
* Updated max power values for both demon hunter specs
* Fixed a crash during DK and DH creation
* Added playercreateinfo data for demon hunters

Closes #17651
2016-07-23 18:39:56 +02:00
Shauren
a9a13d10f7 Merge branch '6.x' of https://github.com/TrinityCore/TrinityCore into legion 2016-07-17 17:37:06 +02:00
Shauren
a8c412a063 Tools: Added universal TrinityCore banner with git version info to all tools 2016-07-17 17:24:53 +02:00
Mihapro
b7c2d309e6 [6.x] Core/Battlefield: Tol Barad (#17124) 2016-07-15 14:39:41 +02:00
Shauren
70137b8f3a Merge branch '6.x' of https://github.com/TrinityCore/TrinityCore into legion 2016-07-06 00:05:13 +02:00
Aokromes
e76f5bd93e Update worldserver.conf.dist 2016-07-02 14:18:18 +02:00
Aokromes
54881d2296 Update worldserver.conf.dist 2016-07-02 13:20:18 +02:00
Shauren
d2733eb6f1 Merge branch '6.x' of https://github.com/TrinityCore/TrinityCore into legion 2016-06-13 21:00:25 +02:00
Aokromes
1379505bf2 Update worldserver.conf.dist 2016-06-04 12:49:07 +02:00
DDuarte
8b26aea95a Implement real time statistic visualization (#16956)
Docs at https://trinitycore.atlassian.net/wiki/display/tc/Monitoring+a+TrinityCore+server

* Common/Graphs: Initial proof of concept

* Move influx db code to its own class

* Reuse the same socket

* Allow to log values of different categories

* Allow to log events

* Pass the timestamp to influxdb

* Send events in batches

* Send data async

* Log server shutdown.
Fix memory leak.

* Allow to enable/disable Stats in the settings and at runtime

* Read interval between each batch send from config

* Add InfluxDB connection info to configs

* Move each event category to its own table

* Log pathfinding queries

* Move categories table initialization to constructor using enum as key to avoid assigning the table name to the wrong enum value

* Log player login/logout events.
Pass the hostname correctly in the HTTP request.

* Fix linux build

* Handle "Connection: close" HTTP header, reconnecting on next scheduled send.
Disable StatsLogger if connection fails, logging the error.

* Add an enum for categories of logged values, it's still possible to pass a string instead of the enum.

* Don't log the whole batchedData when InfluxDB returns an error, it's too long and unreadable on console.

* Allow to call a function at a specified interval in thread-safe World::Update() context to log data like player count.

* Log map tile load/unload

* Core/StatsLogger: Allow logging more value types other than ints

https://docs.influxdata.com/influxdb/v0.10/write_protocols/write_syntax/

* Fix a typo in string escape of StatsLogger

* Yet more fixes to the escaping in FormatInfluxDBValue

* DB/Gameobject: Fix respawn time of few Quest GameObjects

By Tauriella, closes #16701

* DB/Misc: Fix some engrish

By tkrokli closes #16648

* Tools/MMaps: Add format library linking to mmaps_generator

(Very) partial cherry pick of ed75b0649a

* Core/StatsLogger: Simplify code

Convert values and categories arrays to maps initialized in-place
Remove constructor and destructor

* Core/StatsLogger: Add realm name to the event and value tags

* Log amount of processed packet of each session

* Apply recent singleton changes to sStatsLogger too

* Fix influxdb data format if no realm name is present

* Remove unneeded newlines from request body, fixes response 400 from InfluxDB 0.10

* Rename Reporting folder to Metric

* Rename StatsLogger to Metric

* Rename InfluxDB configs to Metric

* Add Grafana dashboards

* Add a random annoying macro

* Move string formatting to Metric::SendBatch(), reducing performance footprint of Metric::LogEvent() and Metric::LogValue()

* Update grafana graphs refresing tags on load and showing now-15m data, refreshing every minute. These settings can be modified in grafana.

* Rename MetricData fields

* Contrib/Grafana: Rename dashboard files

* Contrib/Grafana: Replace hardcoded Windows/Ubuntu realm names by the default, Trinity

* Config/Worldserver: Add missing section to the index

* Contrib/Grafana: Add singlestat panels with current online players, update diff averages (1 min, 5 mins and 15 mins)

http://i.imgur.com/Zi8lfvS.png

* Core/Metric: Replace the enums MetricEventCategory and MetricValueCategory by strings

For the sake of simplicity and less recompile time when adding new metrics, similar to how TC_LOG_* works

* Contrib/Grafana: Display the current number of online players and not its average

Closes #15075
(cherry picked from commit 3ae1016082)

# Conflicts:
#	src/server/game/Server/WorldSession.cpp
#	src/server/game/World/World.cpp
#	src/server/worldserver/Main.cpp
2016-06-04 11:26:57 +01:00
Sean Rhone
9db75766e7 Update worldserver.conf.dist (#17270)
- Very minor typo
2016-06-03 00:35:24 +01:00
Shauren
91753a94b3 Core/PacketIO: Updated character list packets for 7.x 2016-05-20 23:39:39 +02:00
Aokromes
1a7df22122 Update worldserver.conf.dist 2016-05-14 06:43:04 +02:00
Shauren
c75fcbe20b Core/Achievements: AchievementMgr refactoring
* Extracted base CriteriaHandler class that deals with criteria only and will be reused for future scenario implementation
* Fixed players earning guild achievements
2016-05-07 01:16:29 +02:00
Aokromes
ae05738252 Update worldserver.conf.dist
(cherry picked from commit aa9129f55d)
2016-04-28 17:11:41 +01:00
Mikhail Redko
c273248ad5 Core/Misc: Move STOP_TIME_FOR_PLAYER value to config. (#17024)
(cherry picked from commit d5f04f5a38)
2016-04-28 17:11:19 +01:00
Naios
51ec8d3b8c Core/Scripting: Use the path of the worldserver executable to search for the scripts dir
* Fixes issues when starting the worldserver not in the bin directory
  or the CMAKE_INSTALL_PREFIX directory using the -c option.

(cherry picked from commit 86b0fcf67a)
2016-04-18 23:03:24 +02:00
Naios
bb7ac917fb Core/Scripting: Change the INFO logger of the hotswap system to enabled
(cherry picked from commit 1fe4e09d1f)
2016-04-17 01:19:32 +02:00
Aokromes
0f867ab6d7 Update worldserver.conf.dist
(cherry picked from commit afaa8e2c60)
2016-04-16 01:53:01 +01:00
Naios
48776d9ce9 Core/Worldserver: Correct the default comment of HotSwap.EnableReCompiler
* Thanks jackpoz for noticing

(cherry picked from commit 9e43e50fa7)
2016-04-14 21:30:36 +02:00
Naios
ea4ac00ac7 Core/Build: Provide an interface target for game
* Increases the build time because dependent projects can build
  without waiting for the game project.

(cherry picked from commit ff8a54ab92)
2016-04-14 21:30:27 +02:00
Razi Alexis
462842a303 Fixed typo in worldserver.conf.dist (#16958) 2016-04-13 20:44:03 +01:00
Naios
bc0f2b6e5a Core/Game: Add a dynamic script reloader which reloads scripts modules on changes.
* is responsible for registering plain modules.
* requires compilation with the `WITH_DYNAMIC_LINKING` flag.
* requires further support of the ScriptMgr.
2016-04-11 21:13:59 +02:00
Naios
848b8a4136 Core/Scripts: Split script subdirectories into independent modules
* Makes it possible to define the linkage for every module
* Move the ScriptPCH into the root directory
* Changes the SCRIPTS cmake variable to a string type:
  -> -DSCRIPTS=0 is -DSCRIPTS="minimal-static" now
     (builds commands and spells statically)
  -> -DSCRIPTS=1 is -DSCRIPTS="static" now
     (builds all modules statically)
  -> -DSCRIPTS="dynamic"
     (builds all modules dynamically)
  -> Also the default value which is provided by the SCRIPTS
     variable is overwriteable through the SCRIPTS_COMMANDS,
     SCRIPTS_SPELLS... variable.
2016-04-11 21:13:58 +02:00
Gigi1237
c19172cad9 Core/Blackmarket: Implemented black market 2016-04-11 18:22:09 +02:00
pete318
7d5d79aa01 Implement AuctionHouse features: GetAll scan and search throttling
Implements two standard features of the Auction House.
* GetAll scan, retrieves all auctions and sends them in a single packet.
  There's a limitation on how often a player can do this (Max 55000 items)
* Search throttling. For normal searches, the server can send a time
  in milliseconds to the client, the client will wait that long between
  searches. Delay set in config

Closes #16469

(cherry picked from commit 3aaeb57405)
2016-04-10 17:48:29 +02:00
Vincent-Michael
179b521dce Core: Remove whitespaces
(cherry picked from commit 5e74c2223b)
2016-04-09 17:14:08 +02:00
r00ty-tc
0bf70423f8 Core/Maps: Implement optional pre-loading of maps.
- Option to preload basemaps upon server load (BaseMapLoadAllGrids)
- Option to preload instance maps upon map load (InstanceMapLoadAllGrids)
- Change default logging to only log mmap errors to server log
- Add new public to map to load all cells in map
- change debug loadcells to use new function instead

(cherry picked from commit 971f4ccab8)
2016-04-09 17:08:41 +02:00
Treeston
aca9efc47a Merge pull request #16633 from Treeston/3.3.5-talentinspect
Core/Packets: Adjust 'TalentsInspecting' option
(cherry picked from commit 3e250fe4e8)
2016-04-08 18:42:59 +02:00
Shauren
4a3a178d7f Buildsystem: Initial changes to support building with vs clang toolset 2016-04-05 22:43:41 +02:00
DDuarte
0afcefea27 Core/Config: Fix 3 more missing config warnings
Closes #16861

Thanks tkrokli
2016-03-31 03:31:21 +01:00
DDuarte
9431b94bff Core/Config: Error logging for ptree_bad_data
Ref 6487e2f2d6 (commitcomment-16888976)
2016-03-31 03:19:27 +01:00
Shauren
dde620c402 Core: Updated to 6.2.4
* Rewrite bnetserver for new authentication protocol
2016-03-28 17:12:57 +02:00
DDuarte
be573a7aa4 Core/AHBot: Add missing AuctionHouseBot.Class.CLASS.Allow.Zero to config
Ref #16859

(cherry picked from commit 92be9ad7ad)
2016-03-28 02:37:08 +01:00
DDuarte
423bded9a6 Core/Network: Change SocketMgr.StartNetwork to take the thread count by arg instead of config
AuthSocketMgr doesn't need "Network.Threads" config

Fixes "Missing name Network.Threads in config file authserver.conf"

Ref #16859

(cherry picked from commit 980f28d2ce)

# Conflicts:
#	src/server/authserver/Server/AuthSocketMgr.h
#	src/server/game/Server/WorldSocketMgr.cpp
2016-03-28 02:36:58 +01:00
Duarte Duarte
af0da1dde1 Merge pull request #16101 from NathanHandley/3.3.5
Updated AuctionHouseSeller to have item class stack control
(cherry picked from commit bddf9ec6fe)
2016-03-21 23:33:00 +01:00
Shauren
92e247b226 Core/Dep: Removed ZMQ dependency in preparation for future changes 2016-03-20 18:50:25 +01:00
Naios
a5c2c0c037 CMake: Use inherited dependencies in worldserver and authserver
* Closes #1679

(cherry picked from commit 03d249f063)
2016-03-19 23:19:55 +01:00
Naios
28d8f7f70d CMake: Use inherited dependencies in scripts
* Removes the circular dependency between game <-> scripts

(cherry picked from commit 96bc31924a)
2016-03-19 23:19:54 +01:00
Naios
37dbbe22eb Dep/CppFormat: Update cppformat to cppformat/cppformat@5174b8c
(cherry picked from commit f52495c66b)
2016-03-16 16:12:04 +01:00
Shauren
16953c9025 Merge pull request #16763 from mateusdemboski/patch-1
Added locales id for "ptBR" and "itIT" on worldserver.conf.dist
2016-03-11 23:48:44 +01:00
Naios
7c257aab5e Core/Worldserver: Move the Realm instance into the game library 2016-03-11 18:35:50 +01:00
Naios
a8fe7f6eb7 Core/Database: Move singleton instances into compilation units
* Fixes issues when building shared libraries
  (prevents gcc and clang from providing several instance)
* Also instantiate the database worker pools in DatabaseEnv.cpp now.
2016-03-11 18:25:55 +01:00
Naios
30517cb1d3 Core/Common: Generalize platform specific includes in common/Platform 2016-03-11 18:25:55 +01:00
Mateus Demboski
6ae89dfe86 Update worldserver.conf.dist 2016-03-11 09:49:13 -03:00
MitchesD
ce5def332f Core/Misc: fix build 2016-03-03 19:58:28 +01:00