Commit Graph

58 Commits

Author SHA1 Message Date
天鹭
a1c8e0f221 refactor(Core): SendDirectMessage (#23230) 2025-10-30 14:21:26 -03:00
Takenbacon
73317b2706 feat(Core/Grids): Remove WorldObject separation in grid containers (#22595) 2025-08-09 06:36:24 +02:00
Andrew
cdf35268a2 fix(Core/Opcodes): Crash fix (#22453) 2025-07-10 12:04:13 -03:00
Kitzunu
619f40b01f feat(Core/Chat): Allow whispers to Game Masters regardless of sender … (#22417) 2025-07-08 12:00:03 -03:00
Exitare
98ceb1c067 fix(Core/PlayerScript) Align player script function names (#21020)
Co-authored-by: sudlud <sudlud@users.noreply.github.com>
2025-02-16 14:59:41 +01:00
Takenbacon
ee69a569c4 fix(Core/Grids): Grid improvements (#20955) 2025-02-14 22:11:27 +01:00
Benjamin Jackson
1edac37ac3 refactor(Core): Make more use of helpers. (#19835)
* Init.

* Reword.

* Update codestyle script.

Co-Authored-By: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

* Add gameobject type ID check, reorder checks.

* Add helper/codestyle check for unit type.

* `IsUnit()` -> `IsCreature()`

* Add `IsUnit()` method.

* Use type mask.

https: //github.com/TrinityCore/TrinityCore/commit/cc71da35b5dc74abf71f8691161525a23d870bb5
Co-Authored-By: Giacomo Pozzoni <giacomopoz@gmail.com>
Co-Authored-By: Ovahlord <18347559+Ovahlord@users.noreply.github.com>

* Replace instances of `isType` with `IsUnit`.

---------

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>
Co-authored-by: Ovahlord <18347559+Ovahlord@users.noreply.github.com>
2024-09-03 14:41:31 -03:00
Kitzunu
e4df159f5c refactor(Core/Chat): Move SendNotification to ChatHander (#19491)
* refactor(Core/Chat): Move SendNotification to ChatHander

* Update Battleground.cpp

* fix build

* Update src/server/game/Chat/Chat.h
2024-08-10 11:39:46 -03:00
Kitzunu
6c0afe1810 refactor(Core/WorldSession): Make SendNotification use fmt and parse acore_string (#19489)
* refactor(Core/WorldSession): Make SendNotification use `fmt`

* Make SendNotification use `fmt`

* Make SendNotification parse acore_string entries
2024-07-28 01:25:06 +02:00
Kitzunu
034a4c0ff6 fix(Core/Chat): Exempt addon messages from CONFIG_CHAT_MUTE_FIRST_LOGIN (#19472)
* closes https://github.com/azerothcore/azerothcore-wotlk/issues/19471
2024-07-27 08:21:23 -03:00
Kitzunu
ebf5f6710a feat(Core/Chat): Provide a fully-formed protocol for addons to intera… (#19305)
* feat(Core/Chat): Provide a fully-formed protocol for addons to interact with GM commands

* Send success/fail state, allow interleaving, and indicate end of output. Add framework for supporting non-human-readable output in commands.

* cherry-pick commit (508c9d2fc1)

This PR implements a well-formed protocol for addons to communicate with the server, outlined below:

- All communication happens over the addon channel (`LANG_ADDON` in terms of the core, `CHAT_MSG_ADDON`/`SendAddonMessage` for the client). The prefix used for all messages is `AzerothCore` (in client terms - in core terms, every message starts with `AzerothCore\t`).
- In each message, the first character is the opcode. The following four characters are a unique identifier for the invocation in question, and will be echoed back by the server in every message related to that invocation. Following is the message body, if any.
- The following opcodes are supported:
    - Client to server:
        - `p` - Ping request. The core will always respond by ACKing with the passed identifier. No body.
        - `i` or `h` - Command invocation. The message body is the command text without prefix. `i` requests machine-readable output, `h` requests human-readable.
    - Server to client:
        - `a` - ACK. The first message sent in response to any invocation (before any output). No body.
        - `m` - Message. Sent once per line of output the server generates. Body = output line.
        - `o` - OK. Indicates that the command finished processing with no errors. No body.
        - `f` - Failed. Indicates that command processing is done, but there was an error. No body.

Expected overhead is minimal, and this integrates seamlessly with existing command scripts (no changes necessary).

PS: There's also a client-side addon library that exposes this protocol in a developer-friendly way over at https://github.com/azerothcore/LibAzerothCore-1.0

---------

Co-authored-by: Treeston <14020072+Treeston@users.noreply.github.com>
2024-07-06 19:13:24 +02:00
avarishd
43be5db44c fix(Core/ChatHandler): SPELL_AURA_MOD_LANGUAGE should affect only Say… (#17465)
fix(Core/ChatHandler): SPELL_AURA_MOD_LANGUAGE should affect only Say and Yell
2023-10-10 10:15:48 -03:00
Axel Cocat
357a2a33ce feat(Core/ChatHandler): ignore chat level requirement when whispering self (#15564)
feat(Core/ChatHandler): ignore chat level requirement when whispering self
2023-03-25 00:14:38 +01:00
Kitzunu
4870b14b1f refactor(Core/Object): getLevel() -> GetLevel() (#14122)
* refactor(Core/Object): getLevel() -> GetLevel()

* fix build and sneak some doxygen in

* codeSTLE

* codestyle
2022-12-31 17:39:23 +01:00
UltraNix
962cefdcd8 fix(Core/Misc): Consider /dance as an emote state. (#14275) 2022-12-22 07:38:09 +01:00
M'Dic
8b9541873a feat(Core/ChatHandler/Conf): Flood Control Addon Messages (#12603)
* feat(Core/ChatHandler): Flood Control Addon Messages

Original Closed PR by @Kitzunu
https://github.com/azerothcore/azerothcore-wotlk/pull/11675

Cherrypicked TC:
cherry-pick commit (TrinityCore/TrinityCore@5384fc1)
cherry-pick commit (stoneharry/TrinityCore@a0629fc)

Co-Authored-By: stoneharry 3818405+stoneharry@users.noreply.github.com
Co-Authored-By: Shauren shauren.trinity@gmail.com
Co-Authored-By: stoneharry <3818405+stoneharry@users.noreply.github.com>
Co-Authored-By: Shauren <shauren.trinity@gmail.com>
Co-Authored-By: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

* update: (pr): Review Response

* update: (core): Chathandler

No reason why this case should even exist. Previous or current.  This cast is under two sided interations which will always lead to you being in a group of some sorts. there is literally zero sense having a above or equal to level 80 if statement here.

* update (cleanup): Code Style

suggestion per @Nefertumm

Co-Authored-By: Angelo Venturini <nefertum.dev@protonmail.com>

Co-authored-by: stoneharry <3818405+stoneharry@users.noreply.github.com>
Co-authored-by: Shauren <shauren.trinity@gmail.com>
Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
Co-authored-by: Angelo Venturini <nefertum.dev@protonmail.com>
2022-08-17 10:37:34 -04:00
Kargatum
5969df4e30 refactor(Core/Logging): switch to fmt style for LOG_ (#10366)
* feat(Core/Common): add support fmt style for ASSERT and ABORT

* correct CheckCompactArrayMaskOverflow

* 1

* Update src/server/game/Spells/Spell.cpp

* rework logging

* add fmt replace logs

* logging

* FMT_LOG_

* settings

* fix startup

* 1

* 2

* 3

* 4

* 5

* fmt::print

* to fmt
2022-01-27 16:44:41 +01:00
Kargatum
8b7df23f06 feat(Core/Time): Implement saparated manager for game time (#8630) 2022-01-24 17:55:00 +07:00
IntelligentQuantum
725b1266b4 refactor(Core/Packet): Chat (#9509)
* Chat

* .

* Update GameObject.cpp

* Update Object.cpp

* Update Player.cpp
2022-01-08 07:11:06 -03:00
Kargatum
18d5482415 fix(Core/Chat): correct logic for using guild officer chat (#9535) 2021-12-06 12:29:20 -03:00
Kargatum
51adbffae4 feat(Core/Modules): add separated lib for modules (#9281) 2021-12-02 20:28:58 +07:00
Kargatum
bc9473482e feat(Core/Chat): new argument parsing and unify chat hyperlink parsing (#6243) 2021-10-23 10:15:42 +02:00
Kitzunu
bc82f36f1f refactor(Core/Unit): clean MonsterText methods (#6957) 2021-10-15 10:25:29 +02:00
Kargatum
52aa0e9966 feat(License): add new headers information about license (#7941)
Co-authored-by: Francesco Borzì <borzifrancesco@gmail.com>
2021-09-30 13:40:52 +07:00
Kargatum
5787d00d54 chore(Core/Logging): replace most server loggers (#5726)
* chore(Core/Logging): replace most server loggers

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
2021-06-21 03:07:12 +02:00
Francesco Borzì
466cdb68d6 refactor(Core): code cleanup (part 2) (#6374) 2021-06-16 20:40:42 +02:00
Kargatum
d398c34c61 chore(Core/Common): delete macro UNUSED (#6119) 2021-06-01 17:22:29 +02:00
Kitzunu
897a02bb75 refactor(Core/Misc): acore to Acore (#6043) 2021-05-31 14:21:54 +02:00
Kargatum
d8911d816f feat(Core/PacketIO): correct parsing some opcodes (#6051) 2021-05-28 00:34:54 +02:00
UltraNix
f4c226423d feat(Core/Misc): implement ObjectGuid class (port from TC) (#4885) 2021-04-25 22:18:03 +02:00
Kargatum
4af4cbd3d9 feat(Core/Logging): rework logging (#4692)
* feat(Core/Logging): rework logging

* correct level for sql.sql

* del unused config options

* Correct build

* correct after merge

* whitespace

20:29:37 1. 'Player.cpp'. Replace (1)
20:29:37 2. 'ObjectMgr.cpp'. Replace (3)

* 1

* correct logging

* correct affter merge

* 1

* 2

* LOG_LEVEL_WARN

* #include "AppenderDB.h"

* 3

* 4

* 5

* 1. 'WorldSocket.cpp'. Replace (1)

* 6

* 1
2021-04-17 11:20:07 +02:00
Francesco Borzì
f6a17164be fix(Core/License): issue with old files license (#4762) 2021-03-17 09:46:01 -06:00
Kitzunu
28f1dc5c0c refactor(Core): replace NULL with nullptr (#4593) 2021-03-02 01:34:20 +01:00
Kitzunu
dbc0ff6554 refactor(Core): sort #includes alphabetically (#4579) 2021-02-24 22:34:42 +01:00
Andrius Peleckas
2794842553 feat(Core/Warden): optimization + PQR detection (#3875)
* Update AuctionHouseHandler.cpp

* feat(warden): block PQR

* wip

* Update Warden.cpp

* Core/Warden: minor preperation

* Core/Misc: implemented some needed container wrapper functions

* Core/Warden: more preperations

* Core/Warden: more rework
* LUA checks now are splitted to seperate config
* LUA checks are always in front of queue
* Fixed "Other" checks
* Fixed PQR detection

* Core/Warden: adjusted and optimized

* Core/Warden: optimization

* Core/Warden: more optimization

* Core/Warden: use warden comments in ban reason

* Core/Warden: more warden work

* Core/Warden: more optimizations

* Core/Warden: more refactors

* Core/Warden: some more refactors + use default SHA definitions

* Core/Warden: more refactoring

* Core/Warden: fixed PQR detection again

* Core/Warden: improved detection logging

* Core/Misc: removed SmartEnums - we do not need it here + maybe should go as seperate commit

* Core/Warden: fixed some warnings

* Core/Warden: codestyle

* Core/Warden: include warden check comment to console logs

* Core/Warden: minor adjustment for previous commit

* Core/Warden: fixed static analysis warning

* Core/Warden: compilers, you're drunk this time... function is not unused...

* Core/Warden: minor correction for logs

* Core/Warden: one more improvement for logs

* Core/Warden: added missing overrides

* Core/Warden: some codestyle

* Core/Misc: more codestyle

* Core/Misc: more codestyle!

* Core/Warden: restored default config options... (if you change it, change in core source too)

* Core/Warden: addition to previous commit

* DB/Warden: added EWT and WOWPlus checks (provided by lineagedr)

* DB/Warden: addition to previous commit

* fix: codestyle

* Core/Warden: fixed build when extra logs are enabled in cmake

Co-authored-by: Stefano Borzì <stefanoborzi32@gmail.com>
Co-authored-by: Francesco Borzì <borzifrancesco@gmail.com>
2021-01-17 18:36:35 +01:00
Kargatum
a2b26272d2 refactor(Core/Game): restyle game lib with astyle (#3466) 2020-10-12 10:08:15 +02:00
Kitzunu
1f89282b22 refactor(Core): NULL -> nullptr (#3275)
* NULL to nullptr

* NULL to nullptr

* NULL to nullptr

* NULL to nullptr

* NULL to nullptr

Co-authored-by: Francesco Borzì <borzifrancesco@gmail.com>
Co-authored-by: Stefano Borzì <stefanoborzi32@gmail.com>
2020-08-31 11:55:09 +02:00
Stefano Borzì
3c5bb73f29 fix(Core/ChatHandler): Prevent messages > 255 characters (#3063) 2020-05-27 08:50:21 +02:00
Stefano Borzì
ad6985f459 fix(core/packet): prevent client crash from malformed packet/message (#2910)
* Update AuctionHouseHandler.cpp

* fix(core/packet): prevent crash from malformed string
2020-04-21 00:00:26 +02:00
Amin.MasterkinG
378cd6fe28 fix(core): "Silenced - You can only chat with GMs" spell (#2716) 2020-04-04 11:01:11 +02:00
Amin.MasterkinG
17fc93d864 fix(Core/Crash): remove unneeded hook OnPlayerChat (#2707) 2020-02-26 08:03:18 +01:00
Viste
e22d78ecd6 refactor(Core): rename namespaces and macros to acore (#2454) 2019-12-01 13:13:31 +01:00
Viste
7a1ac8245b feat(Core/PacketIO): restrict CMSG_EMOTE/CMSG_STANDSTATECHANGE to only allow emotes/stand states that client can send by itself (#2412)
Co-authored-by: Shauren <shauren.trinity@gmail.com>
2019-11-15 16:28:54 +07:00
Kargatum
d40e894618 feat(Core/CFBG): Added support module mod-cfbg (#2064)
https://github.com/Winfidonarleyan/mod-cfbg - Original module
https://github.com/azerothcore/mod-cfbg - the fork in AC
2019-08-06 09:21:11 +07:00
Francesco Borzì
0758677578 feat(core): allow to debug KickPlayer() (#1549) 2019-03-05 22:58:40 +01:00
ladiszlai
15e4d2e21f Core/ChatHandler: Update Addon message read fix (#811) 2019-02-27 00:24:41 +07:00
Nefertumm
c15206fc15 Revert "feat(core): Ensure that all actions are compared to fixed point in time (#1236) (#1458)" (#1471)
This reverts commit 51b8773528.
2019-02-15 15:14:49 -03:00
Viste(Кирилл)
51b8773528 feat(core): Ensure that all actions are compared to fixed point in time (#1236) (#1458)
i.e. world update start
2019-02-14 19:22:17 +01:00
ayase
00777a80ae Eluna implementation (#847)
* azerothcore + eluna done.

* Remove the Eluna single thread limit.

* Read Eluna Settings file.

* submodule change.

* fix(test)  Ubuntu - Cant Link Library after Compile

* The ELUNA is disabled by default.

* remove submodule luaEngine.

* some change

* fix a error

* change cmake

* fix: some onplayerchat does not have hooks.

* Eluna: Add BG event Hooks.

* fix:cmake hook AFTER_LOAD_CONF not work.

* Remove the eluna switch.

* Remove some define in the core.

* fix conf file not read in the linux.

* eluna : change bg hook parameter type

* Remove TC log function call

* change bg hook OnBGEnd parameter type.


Note: to enable Eluna, the module is required
2018-05-22 20:22:11 +02:00
Nefertumm
dd300003e2 Update license links (#783) 2018-03-12 10:54:57 +01:00