Fork of Old-Man-Warcraft/mod-gold-rush — AzerothCore timed resource-rush world event with playerbot routing. Local fixes applied.
Every failed scheduled start overwrote the rolled Min/MaxInterval with a hard-coded 5 minutes and never restored it, so on a server that sits empty the scheduler degenerated into a permanent 5-minute poll. The moment the first player logged in, an event fired within one retry window and anchored on their exact position, with a server-wide announcement -- login ambush rather than a scheduled world event. It also wrote a retry line to gold-rush.log every 5 minutes forever (Debug defaults to 1). StartEvent now counts eligible anchors when the schedule expires, holds without consuming the interval while below MinPlayersOnline, and inserts GraceMinutes once the world repopulates. The count runs only on schedule expiry, never per world tick. New config: GoldRush.RetryMinutes (5), GoldRush.GraceMinutes (15), GoldRush.MinPlayersOnline (1). GraceMinutes = 0 rolls a fresh interval instead. GM-forced starts pass scheduled=false and bypass both gates. Verified with clang -fsyntax-only against the live build's compile flags. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019vTNrJGsprcjdjjjDJD5ZM |
||
|---|---|---|
| conf | ||
| src | ||
| CHANGELOG.md | ||
| LICENSE | ||
| mod-gold-rush.cmake | ||
| README.md | ||
mod-gold-rush
mod-gold-rush is an AzerothCore module that runs a timed, server-wide
resource eruption event. When Gold Rush activates, the module selects an
eligible open-world zone, anchors on a live player, spawns temporary resource
nodes near the hotspot, announces the event to the server, and can route
playerbots into the area to create a PvPvE scramble.
Requirements
Required dependency:
mod-playerbotsmust be installed and enabled. Gold Rush includes direct playerbot integration and will not work correctly without the Playerbots module.
- Requires AzerothCore.
- Requires
mod-playerbots. - Gold Rush bot routing, hotspot pressure, and related behavior depend on Playerbots APIs.
Compatibility
- Built for AzerothCore-based setups that include
mod-playerbots. - Not compatible with a stock AzerothCore setup that does not have
mod-playerbotsinstalled. - Gold Rush directly includes Playerbots headers and uses Playerbots runtime APIs for routing bots to event hotspots.
- If
mod-playerbotsis missing, Gold Rush should be expected to fail to build or fail to function correctly. - Best fit: the same Playerbot-oriented AzerothCore environment this module is being developed and tested against.
Features
- Schedules Gold Rush events on a random interval.
- Announces an active hotspot with approximate location messaging.
- Spawns temporary mixed ore and herb nodes around a live player anchor.
- Supports dynamic zone selection with blacklist-based restrictions.
- Exposes GM commands for status, force-start, test-start, stop, and reroute.
- Routes random playerbots toward the active hotspot with faction pressure.
- Writes diagnostics to a dedicated
gold-rush.loglogger/appender pair. - Supports verbose event logging for anchor, spawn, and routing behavior.
Commands
GM commands
.goldrush status- show current event state and telemetry..goldrush start [zone or area]- start Gold Rush in your current eligible zone or in a configured hotspot by name..goldrush teststart- force a hotspot at your current eligible location..goldrush stop- end the active event and despawn temporary nodes..goldrush reroute- refresh playerbot routing pressure.
Installation
- Make sure
mod-playerbotsis already installed in your AzerothCore setup. - Place
mod-gold-rushinside the AzerothCoremodules/directory. - Re-run CMake so AzerothCore detects the module.
- Build and install/update your server.
- Copy
conf/gold_rush.conf.distto your generated module config directory asgold_rush.confif you want local overrides. - Restart
worldserver.
Configuration
The module ships its defaults in conf/gold_rush.conf.dist.
Important options:
GoldRush.EnableGoldRush.ZonePoolGoldRush.BlacklistGoldRush.VerboseLoggingGoldRush.MinIntervalMinutesGoldRush.MaxIntervalMinutesGoldRush.DurationMinutesGoldRush.MinNodesGoldRush.MaxNodesGoldRush.BotsPerFactionGoldRush.BotPulseSecondsGoldRush.SpawnRadiusYardsGoldRush.NodeEntriesGoldRush.StartMessageGoldRush.EndMessageGoldRush.DebugAppender.GoldRushLogLogger.module.goldrush
Behavior notes
- Event locations are announced approximately, not with exact coordinates.
- Hotspots are temporary and despawn at event end.
- Eligible anchors must be in open-world, non-city, non-sanctuary zones.
mod-playerbotsis required because Gold Rush actively routes random bots to the event hotspot.- Blacklisted zones and zone/area pairs are excluded from selection.
- Node selection alternates between ore-like and herb-like entries when possible.
- If configured hotspots are unavailable, Gold Rush can fall back to eligible live-player zones.
Repository contents
src/- module implementation and script loader registration.conf/- distributed module configuration.mod-gold-rush.cmake- AzerothCore build integration.
Status
This module is actively being iterated on. Recent work includes:
- looser open-world zone eligibility,
- corrected node entry parsing from config,
- improved test-start behavior and hotspot fallback handling.