Title:
Second realm with shared auth + different RandomBotAccountPrefix creates bot accounts but no bot characters
Setup
Goal
I want:
- one shared auth for real players, so one account can enter both realms
- separate random bot populations on both realms
What works
Premium works correctly with random bots.
Example:
SELECT COUNT(*) AS premium_rndbot_chars
FROM acore_characters.characters c
JOIN acore_auth.account a ON a.id = c.account
WHERE a.username LIKE 'rndbot%';
Result:
Also, Premium rndbot% accounts are populated with 10 characters each.
What fails
On Progressive, I changed bot account prefix to avoid collision with Premium:
AiPlayerbot.RandomBotAutologin = 1
AiPlayerbot.MinRandomBots = 500
AiPlayerbot.MaxRandomBots = 500
AiPlayerbot.RandomBotAccountCount = 2000
AiPlayerbot.RandomBotAccountPrefix = "prgbot"
AiPlayerbot.DeleteRandomBotAccounts = 0
This successfully creates prgbot% accounts in shared acore_auth, but creates no bot characters in acore_characters_r2.
Progressive DB evidence
Accounts are created:
SELECT COUNT(*) AS prgbot_accounts
FROM acore_auth.account
WHERE username LIKE 'prgbot%';
Result:
But no bot characters are created on Progressive:
SELECT COUNT(*) AS prgbot_characters
FROM acore_characters_r2.characters c
JOIN acore_auth.account a ON a.id = c.account
WHERE a.username LIKE 'prgbot%';
Result:
No bot characters exist for prgbot% on Premium either:
SELECT COUNT(*) AS prgbot_chars_premium
FROM acore_characters.characters c
JOIN acore_auth.account a ON a.id = c.account
WHERE a.username LIKE 'prgbot%';
Result:
These prgbot% accounts are empty on both realms:
SELECT a.id AS account_id, a.username, COUNT(x.guid) AS total_chars_any_realm
FROM acore_auth.account a
LEFT JOIN (
SELECT account, guid FROM acore_characters.characters
UNION ALL
SELECT account, guid FROM acore_characters_r2.characters
) x ON x.account = a.id
WHERE a.username LIKE 'prgbot%'
GROUP BY a.id, a.username
ORDER BY total_chars_any_realm DESC
LIMIT 20;
Result: all shown accounts have 0 characters.
Progressive links remain empty:
SELECT COUNT(*) AS progressive_links
FROM acore_playerbots_r2.playerbots_account_links;
Result:
Progressive random bot table contains only bot_count:
SELECT * FROM acore_playerbots_r2.playerbots_random_bots LIMIT 20;
Example:
event = bot_count
value = 500
Log
Progressive startup shows:
Creating random bot accounts...
Creating random bot characters...
No more unused names left
Important checks already done
- Config path issue was fixed (
ConfDir / correct playerbots.conf)
RandomBotAccountPrefix = "prgbot" is definitely being read, because prgbot% accounts are created
playerbots_names exists and is identical in acore_playerbots and acore_playerbots_r2
- there are still many free names available across both realms
- missing
weightscales data in acore_playerbots_r2 was fixed
- server no longer fails because of config mismatch
There are still many free names:
SELECT COUNT(*) AS free_names_any_realm
FROM acore_playerbots_r2.playerbots_names p
LEFT JOIN (
SELECT name FROM acore_characters.characters
UNION
SELECT name FROM acore_characters_r2.characters
) c ON c.name = p.name
WHERE c.name IS NULL;
Result:
So the No more unused names left message seems inconsistent with DB state.
Question
Is this scenario supported?
- shared auth for real players
- separate character/playerbots DB per realm
- different
RandomBotAccountPrefix per realm
Right now it looks like on the second realm:
- bot accounts are created
- account types are assigned
- but character creation/linking never happens
Title:
Second realm with shared auth + different RandomBotAccountPrefix creates bot accounts but no bot characters
Setup
AzerothCore WotLK Playerbot branch
Two realms:
Shared auth DB for real players:
acore_authSeparate DBs per realm:
acore_characters,acore_world,acore_playerbotsacore_characters_r2,acore_world_r2,acore_playerbots_r2Goal
I want:
What works
Premium works correctly with random bots.
Example:
Result:
Also, Premium
rndbot%accounts are populated with 10 characters each.What fails
On Progressive, I changed bot account prefix to avoid collision with Premium:
This successfully creates
prgbot%accounts in sharedacore_auth, but creates no bot characters inacore_characters_r2.Progressive DB evidence
Accounts are created:
Result:
But no bot characters are created on Progressive:
Result:
No bot characters exist for
prgbot%on Premium either:Result:
These
prgbot%accounts are empty on both realms:Result: all shown accounts have
0characters.Progressive links remain empty:
Result:
Progressive random bot table contains only bot_count:
Example:
Log
Progressive startup shows:
Important checks already done
ConfDir/ correctplayerbots.conf)RandomBotAccountPrefix = "prgbot"is definitely being read, becauseprgbot%accounts are createdplayerbots_namesexists and is identical inacore_playerbotsandacore_playerbots_r2weightscalesdata inacore_playerbots_r2was fixedThere are still many free names:
Result:
So the
No more unused names leftmessage seems inconsistent with DB state.Question
Is this scenario supported?
RandomBotAccountPrefixper realmRight now it looks like on the second realm: