One hundred autonomous players: the Alliance arrives, the Horde grows
95 new characters join the realm, played by the server: 50 for the Alliance (humans, dwarves, night elves, gnomes, draenei) and 45 more for the Horde (orcs, undead, tauren, trolls, blood elves). With the first five, 100 autonomous players, 10 warriors and 10 priests per faction so the Dungeon Finder can form complete groups.
- Commit
- ee0bb44
- Build
- Build success (2 min) · Target worldserver
The population
| Faction | Players | Warriors (tanks) | Priests (healers) | Races | |---|---|---|---|---| | Alliance | 50 | 10 | 10 | humans 14, night elves 11, dwarves 10, draenei 8, gnomes 7 | | Horde | 50 | 10 | 10 | orcs 11, undead 11, trolls 10, tauren 9, blood elves 9 |
Every class playable from level 1 is represented (the death knight requires a level 55 character). Names follow each race's sound; each character has its own appearance. Created by the 3.3.5a mini-client on ten dedicated accounts (ten characters per account, the realm limit).
Scaling the module
FreeWill.Accounts: all characters of an account become autonomous, without listing a hundred names.- Staggered arrivals: one login every 2 s (over 3 minutes for everyone), instead of a hundred simultaneous loads.
- Spatial index: creatures are bucketed in 200 m cells; looking for game no longer scans a whole continent at each decision.
- GUID index in the manager: each packet sent to a player is no longer compared against a hundred characters.
FreeWill.DebugCharacters: decision traces limited to a few characters.
Monitoring
- Aggregated hourly report: control, min / average / max levels, kills, deaths, quests, stuck count, and the three least advanced players.
- New load alert when the world update exceeds 250 ms.
First measurement
All 100 in game after 3 min 30; worldserver at 65-80 % of one core and 2.2 GB of memory.