From b75ae952b8c10503b39d048cddeeb3fd6e1ee225 Mon Sep 17 00:00:00 2001 From: SylvaniaCore deploy Date: Tue, 11 Aug 2026 23:24:28 +0200 Subject: [PATCH] BG BotFill : bypass du check de nom pour les sessions bots au login Player::LoadFromDB refusait silencieusement les persos bots (noms avec chiffres type Bot5951) et posait AT_LOGIN_RENAME en boucle. Les 181 bots ont ete renommes en base via ai_playerbot_names, et les sessions bots ne passent plus par CheckPlayerName. Co-Authored-By: Claude Fable 5 --- src/server/game/Entities/Player/Player.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 5e05646..36dc3f8 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -18624,8 +18624,11 @@ bool Player::LoadFromDB(ObjectGuid guid, CharacterDatabaseQueryHolder const& hol m_name = fields[2].GetString(); // check name limitations - if (ObjectMgr::CheckPlayerName(m_name, GetSession()->GetSessionDbcLocale()) != CHAR_NAME_SUCCESS || - (!GetSession()->HasPermission(rbac::RBAC_PERM_SKIP_CHECK_CHARACTER_CREATION_RESERVEDNAME) && sObjectMgr->IsReservedName(m_name))) + // SylvaniaCore (module BG BotFill): les sessions bots ne sont pas soumises au check de + // nom - sinon echec de login silencieux (return false) + flag rename pose en boucle + if (!GetSession()->IsBotSession() && + (ObjectMgr::CheckPlayerName(m_name, GetSession()->GetSessionDbcLocale()) != CHAR_NAME_SUCCESS || + (!GetSession()->HasPermission(rbac::RBAC_PERM_SKIP_CHECK_CHARACTER_CREATION_RESERVEDNAME) && sObjectMgr->IsReservedName(m_name)))) { CharacterDatabasePreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_UPD_ADD_AT_LOGIN_FLAG); stmt->setUInt16(0, uint16(AT_LOGIN_RENAME));