feat: add 25 new modules, categorization system, and improved UX

- Added 25 new AzerothCore modules (mod-guildhouse + 24 others)
- Implemented category system with 17 categories across all 93 modules
- Updated README with categorized module table (68 → 93 modules)
- Added 11 NPC spawn commands to documentation
- Updated .env.template with categorized module sections
- Created profiles/all-modules.conf (enables all 91 production modules)
- Enhanced setup.sh manual selection with category grouping

🤖 Generated with [Claude Code](https://claude.com/claude-code)
This commit is contained in:
uprightbass360
2025-11-05 00:31:33 -05:00
parent 00100894c5
commit a005bff989
5 changed files with 866 additions and 247 deletions

View File

@@ -147,98 +147,164 @@ CLIENT_DATA_VOLUME=ac-client-data
# =====================
# Module toggles (0/1)
# =====================
MODULE_PLAYERBOTS=0
MODULE_AOE_LOOT=0
MODULE_LEARN_SPELLS=0
MODULE_FIREWORKS=0
# Requires worldserver.conf tweaks (EnablePlayerSettings=1, DBC.EnforceItemAttributes=0)
MODULE_INDIVIDUAL_PROGRESSION=0
MODULE_AHBOT=0
MODULE_AUTOBALANCE=0
MODULE_TRANSMOG=0
MODULE_NPC_BUFFER=0
MODULE_DYNAMIC_XP=0
MODULE_SOLO_LFG=0
MODULE_1V1_ARENA=0
MODULE_PHASED_DUELS=0
# Needs BreakingNews HTML asset configured (BreakingNews.HtmlPath)
MODULE_BREAKING_NEWS=0
MODULE_BOSS_ANNOUNCER=0
MODULE_ACCOUNT_ACHIEVEMENTS=0
MODULE_AUTO_REVIVE=0
MODULE_GAIN_HONOR_GUARD=0
MODULE_ARAC=0
MODULE_ELUNA=1
# Enables AzerothCore Lua Engine (mod-ale) for Lua scripting
# Requires optional SQL/DBC patches; leave off by default
MODULE_TIME_IS_TIME=0
# Requires in-game NPC placement/config; leave off by default
MODULE_POCKET_PORTAL=0
# Pending upstream verification; leave disabled until tested
MODULE_RANDOM_ENCHANTS=0
MODULE_SOLOCRAFT=0
MODULE_PVP_TITLES=0
# Custom NPC modules pending compatibility validation
MODULE_NPC_BEASTMASTER=0
MODULE_NPC_ENCHANTER=0
MODULE_INSTANCE_RESET=0
# mod-quest-count-level currently fails (uses removed sConfigMgr::GetBoolDefault)
MODULE_LEVEL_GRANT=0
# Popular catalogue modules (disabled by default until evaluated)
MODULE_CHALLENGE_MODES=0
MODULE_OLLAMA_CHAT=0
# Template module for rapid prototyping
MODULE_SKELETON_MODULE=0
# Requires custom client patch / dbc edits
MODULE_BG_SLAVERYVALLEY=0
# TypeScript→Lua toolchain for Eluna scripts
MODULE_ELUNA_TS=0
# Enhances playerbot deployment; expects MODULE_PLAYERBOTS=1
MODULE_PLAYER_BOT_LEVEL_BRACKETS=0
MODULE_STATBOOSTER=0
MODULE_DUNGEON_RESPAWN=0
MODULE_AZEROTHSHARD=0
# Adds Worgen/Goblin races; requires Patch-W.MPQ + DBC sync
MODULE_WORGOBLIN=0
MODULE_ASSISTANT=0
MODULE_REAGENT_BANK=0
MODULE_BLACK_MARKET_AUCTION_HOUSE=0
# Enable/disable modules by setting to 1 (enabled) or 0 (disabled)
# Modules are organized by category for easier navigation
# =====================
# Eluna Lua Script Modules (requires MODULE_ELUNA=1)
# =====================
# Collection of Eluna scripts from elunascripts.github.io
MODULE_ELUNA_SCRIPTS=0
MODULE_EVENT_SCRIPTS=0
MODULE_LEVEL_UP_REWARD=0
MODULE_ACCOUNTWIDE_SYSTEMS=0
MODULE_EXCHANGE_NPC=0
MODULE_RECRUIT_A_FRIEND=0
MODULE_PRESTIGE_DRAFT_MODE=0
MODULE_LUA_AH_BOT=0
MODULE_HARDCORE_MODE=0
# 🤖 Automation
# Playerbot and AI systems
MODULE_NPCBOT_EXTENDED_COMMANDS=0
MODULE_MULTIVENDOR=0
MODULE_TREASURE_CHEST_SYSTEM=0
MODULE_ACTIVE_CHAT=0
MODULE_ULTIMATE_FULL_LOOT_PVP=0
MODULE_HORADRIC_CUBE=0
MODULE_CARBON_COPY=0
MODULE_TEMP_ANNOUNCEMENTS=0
MODULE_ZONE_CHECK=0
MODULE_SEND_AND_BIND=0
MODULE_DYNAMIC_TRADER=0
MODULE_LOTTERY_LUA=0
MODULE_DISCORD_NOTIFIER=0
MODULE_GLOBAL_MAIL_BANKING_AUCTIONS=0
MODULE_OLLAMA_CHAT=0
# mod-playerbots: Installs SQL/config assets; core functionality is built into playerbot images
MODULE_PLAYERBOTS=0
MODULE_PLAYER_BOT_LEVEL_BRACKETS=0
# =====================
# AIO (Azeroth Interface Override) Modules (requires MODULE_AIO=1)
# =====================
# Client-server interface communication modules
MODULE_AIO=0
# ✨ Quality of Life
# Convenience features that improve gameplay experience
MODULE_AOE_LOOT=0
MODULE_AUTO_REVIVE=0
MODULE_FIREWORKS=0
MODULE_INSTANCE_RESET=0
MODULE_LEARN_SPELLS=0
MODULE_SOLO_LFG=0
# ⚔️ Gameplay Enhancement
# Core gameplay improvements and mechanics
MODULE_AUTOBALANCE=0
MODULE_CHALLENGE_MODES=0
MODULE_DUEL_RESET=0
MODULE_DUNGEON_RESPAWN=0
MODULE_HARDCORE_MODE=0
MODULE_HORADRIC_CUBE=0
MODULE_SOLOCRAFT=0
MODULE_STATBOOSTER=0
MODULE_TIME_IS_TIME=0
# 🏪 NPC Services
# Service NPCs that provide player utilities
MODULE_ASSISTANT=0
MODULE_MULTIVENDOR=0
MODULE_NPC_BEASTMASTER=0
MODULE_NPC_BUFFER=0
MODULE_NPC_ENCHANTER=0
MODULE_NPC_FREE_PROFESSIONS=0
# mod-npc-talent-template: Admin commands: .templatenpc create [TemplateName] and .templatenpc reload
MODULE_NPC_TALENT_TEMPLATE=0
MODULE_REAGENT_BANK=0
MODULE_TRANSMOG=0
# ⚡ PvP
# Player vs Player focused modules
MODULE_1V1_ARENA=0
# mod-arena-replay: NPC ID: 98500; known issue: players who were participants experience unusual behavior when watching their own replay
MODULE_ARENA_REPLAY=0
MODULE_GAIN_HONOR_GUARD=0
MODULE_PHASED_DUELS=0
MODULE_PVP_TITLES=0
MODULE_ULTIMATE_FULL_LOOT_PVP=0
# 📈 Progression
# Character and server progression systems
MODULE_DYNAMIC_XP=0
MODULE_INDIVIDUAL_PROGRESSION=0
MODULE_ITEM_LEVEL_UP=0
MODULE_LEVEL_GRANT=0
# mod-progression-system: SQL files cannot be unloaded once executed; requires auto DB updater enabled in worldserver config
MODULE_PROGRESSION_SYSTEM=0
MODULE_PROMOTION_AZEROTHCORE=0
MODULE_WEEKEND_XP=0
# mod-zone-difficulty: Mythicmode NPC 1128001 spawned in raids/heroic dungeons; NPC 1128002 for Mythicmode rewards
MODULE_ZONE_DIFFICULTY=0
# 💰 Economy
# Auction house, trading, and economic systems
MODULE_AHBOT=0
MODULE_BLACK_MARKET_AUCTION_HOUSE=0
MODULE_DYNAMIC_TRADER=0
MODULE_EXCHANGE_NPC=0
MODULE_GLOBAL_MAIL_BANKING_AUCTIONS=0
MODULE_LOTTERY_LUA=0
MODULE_LUA_AH_BOT=0
MODULE_RANDOM_ENCHANTS=0
# 👥 Social
# Social and community features
MODULE_ACTIVE_CHAT=0
MODULE_BOSS_ANNOUNCER=0
MODULE_BREAKING_NEWS=0
MODULE_DISCORD_NOTIFIER=0
MODULE_GLOBAL_CHAT=0
MODULE_TEMP_ANNOUNCEMENTS=0
# 👤 Account-Wide
# Features that apply across all characters on an account
MODULE_ACCOUNTWIDE_SYSTEMS=0
MODULE_ACCOUNT_ACHIEVEMENTS=0
MODULE_ACCOUNT_MOUNTS=0
# 🎨 Customization
# Character and appearance customization
MODULE_ARAC=0
# mod-morphsummon: Allows customization of summoned creature appearances (Warlock demons, Death Knight ghouls, Mage water elementals); NPC ID: 601072
MODULE_MORPHSUMMON=0
MODULE_TRANSMOG_AIO=0
MODULE_WORGOBLIN=0
# 📜 Scripting
# Lua/Eluna scripting frameworks and tools
# mod-aio: Azeroth Interface Override - enables client-server interface communication
MODULE_AIO=0
MODULE_ELUNA=1
MODULE_ELUNA_SCRIPTS=0
MODULE_ELUNA_TS=0
MODULE_EVENT_SCRIPTS=0
# 🔧 Admin Tools
# Server administration and management utilities
MODULE_ANTIFARMING=0
MODULE_CARBON_COPY=0
# mod-keep-out: Requires editing database table mod_mko_map_lock; use .gps command to obtain map and zone IDs
MODULE_KEEP_OUT=0
MODULE_SEND_AND_BIND=0
MODULE_SERVER_AUTO_SHUTDOWN=0
# mod-spell-regulator: WARNING: Custom code changes mandatory before module functions; requires custom hooks from external gist
MODULE_SPELL_REGULATOR=0
MODULE_WHO_LOGGED=0
MODULE_ZONE_CHECK=0
# 💎 Premium/VIP
# Premium account and VIP systems
MODULE_ACORE_SUBSCRIPTIONS=0
# mod-premium: Script must be assigned to an item (like hearthstone) using script name 'premium_account'
MODULE_PREMIUM=0
MODULE_SYSTEM_VIP=0
# 🎮 Mini-Games
# Fun and entertainment features
MODULE_AIO_BLACKJACK=0
MODULE_POCKET_PORTAL=0
# mod-tic-tac-toe: NPC ID: 100155
MODULE_TIC_TAC_TOE=0
# 🏰 Content
# Additional game content and features
MODULE_AZEROTHSHARD=0
MODULE_BG_SLAVERYVALLEY=0
MODULE_GUILDHOUSE=0
MODULE_TREASURE_CHEST_SYSTEM=0
MODULE_WAR_EFFORT=0
# 🎁 Rewards
# Player reward and incentive systems
MODULE_LEVEL_UP_REWARD=0
MODULE_PRESTIGE_DRAFT_MODE=0
MODULE_RECRUIT_A_FRIEND=0
# mod-resurrection-scroll: Requires EnablePlayerSettings to be enabled in worldserver config file
MODULE_RESURRECTION_SCROLL=0
MODULE_REWARD_PLAYED_TIME=0
# 🛠️ Developer Tools
# Development and testing utilities
MODULE_SKELETON_MODULE=0
# =====================
# Rebuild automation

247
README.md
View File

@@ -41,78 +41,186 @@ See [Local Deployment](#-local-deployment) for detailed walkthrough.
### ✅ Available Enhanced Modules
All modules are automatically downloaded, configured, and SQL scripts executed when enabled. Browse the complete collection of **68 modules** below:
All modules are automatically downloaded, configured, and SQL scripts executed when enabled. Browse the complete collection of **93 modules** organized by category:
#### 🤖 Automation
| Module | Description |
|--------|-------------|
| **[mod-playerbots](https://github.com/mod-playerbots/mod-playerbots.git)** | Adds scriptable playerbot characters that can form dungeon parties, raid, and PvP with humans |
| **[mod-aoe-loot](https://github.com/azerothcore/mod-aoe-loot.git)** | Lets characters loot multiple corpses with one click for faster farming |
| **[mod-learn-spells](https://github.com/azerothcore/mod-learn-spells.git)** | Teaches class spells automatically at the correct level to streamline leveling |
| **[mod-fireworks-on-level](https://github.com/azerothcore/mod-fireworks-on-level.git)** | Spawns celebratory fireworks whenever a player dings a new level |
| **[mod-individual-progression](https://github.com/ZhengPeiRu21/mod-individual-progression.git)** | Tracks each character through Vanilla → TBC → WotLK progression, unlocking content sequentially |
| **[mod-ahbot](https://github.com/azerothcore/mod-ahbot.git)** | Populates the auction house with configurable buying/selling behavior to keep markets active |
| **[mod-autobalance](https://github.com/azerothcore/mod-autobalance.git)** | Adjusts creature health and damage in real time to keep fights tuned for the current party size |
| **[mod-transmog](https://github.com/azerothcore/mod-transmog.git)** | Adds a transmogrification vendor so players can restyle gear without changing stats |
| **[mod-npc-buffer](https://github.com/azerothcore/mod-npc-buffer.git)** | Provides a ready-to-use buff NPC who hands out class buffs, food, and utility spells |
| **[mod-dynamic-xp](https://github.com/azerothcore/mod-dynamic-xp.git)** | Tweaks XP gain based on population or custom rules to keep leveling flexible |
| **[mod-solo-lfg](https://github.com/azerothcore/mod-solo-lfg.git)** | A solo-friendly queue that lets every player run dungeons without needing a premade group |
| **[mod-1v1-arena](https://github.com/azerothcore/mod-1v1-arena.git)** | Creates a structured 1v1 ranked arena ladder for duel enthusiasts |
| **[mod-phased-duels](https://github.com/azerothcore/mod-phased-duels.git)** | Moves duelers into their own phase to block interference and griefing |
| **[mod-breaking-news-override](https://github.com/azerothcore/mod-breaking-news-override.git)** | Replaces the client breaking-news panel with server-managed announcements |
| **[mod-boss-announcer](https://github.com/azerothcore/mod-boss-announcer.git)** | Broadcasts dramatic messages when raid bosses fall to your players |
| **[mod-account-achievements](https://github.com/azerothcore/mod-account-achievements.git)** | Shares achievements across characters on the same account for persistent milestones |
| **[mod-auto-revive](https://github.com/azerothcore/mod-auto-revive.git)** | Automatically resurrects characters on death—handy for casual PvE or testing realms |
| **[mod-gain-honor-guard](https://github.com/azerothcore/mod-gain-honor-guard.git)** | Awards honor when players kill city guards, spicing up world PvP raids |
| **[mod-ale](https://github.com/azerothcore/mod-ale.git)** | Adds Eluna Lua scripting engine for creating custom gameplay mechanics |
| **[mod-TimeIsTime](https://github.com/dunjeon/mod-TimeIsTime.git)** | Adds experimental time-twisting mechanics suited for custom events |
| **[mod-pocket-portal](https://github.com/azerothcore/mod-pocket-portal.git)** | Gives players a portal gadget for quick travel to configured destinations |
| **[mod-random-enchants](https://github.com/azerothcore/mod-random-enchants.git)** | Rolls randomized stat bonuses on loot to add Diablo-style gear chasing |
| **[mod-solocraft](https://github.com/azerothcore/mod-solocraft.git)** | Automatically scales dungeon and raid encounters for solo players or small teams |
| **[mod-pvp-titles](https://github.com/azerothcore/mod-pvp-titles.git)** | Restores classic honor titles with a configurable ranking ladder |
| **[mod-npc-beastmaster](https://github.com/azerothcore/mod-npc-beastmaster.git)** | Adds an NPC who can teach, reset, and manage hunter pets for convenience |
| **[mod-npc-enchanter](https://github.com/azerothcore/mod-npc-enchanter.git)** | Introduces an enchanting vendor who applies enchants directly for a fee |
| **[mod-instance-reset](https://github.com/azerothcore/mod-instance-reset.git)** | Adds commands to reset instances quickly—useful for testing or events |
| **[mod-quest-count-level](https://github.com/michaeldelago/mod-quest-count-level.git)** | Enables leveling exclusively through questing by awarding tokens after quest completion |
| **[mod-arac](https://github.com/heyitsbench/mod-arac.git)** | Unlocks every race/class pairing so players can roll any combination |
| **[mod-assistant](https://github.com/noisiver/mod-assistant.git)** | Spawns an all-purpose assistant NPC with heirlooms, professions, and convenience commands |
| **[mod-reagent-bank](https://github.com/ZhengPeiRu21/mod-reagent-bank.git)** | Lets players stash crafting reagents with a dedicated banker NPC |
| **[mod-black-market](https://github.com/Youpeoples/Black-Market-Auction-House.git)** | Backports the Mists-era Black Market Auction House via Eluna scripts |
| **[mod-challenge-modes](https://github.com/ZhengPeiRu21/mod-challenge-modes.git)** | Implements keystone-style timed runs with leaderboards and scaling modifiers |
| **[mod-ollama-chat](https://github.com/DustinHendrickson/mod-ollama-chat.git)** | Connects playerbots to an Ollama LLM so they can chat with humans organically |
| **[mod-player-bot-level-brackets](https://github.com/DustinHendrickson/mod-player-bot-level-brackets.git)** | Keeps bot levels spread evenly across configured brackets |
| **[StatBooster](https://github.com/AnchyDev/StatBooster.git)** | Lets players refine gear stats by rerolling random enchantments with special materials |
| **[DungeonRespawn](https://github.com/AnchyDev/DungeonRespawn.git)** | Teleports dead players back to the dungeon entrance instead of a distant graveyard |
| **[skeleton-module](https://github.com/azerothcore/skeleton-module.git)** | Provides a minimal AzerothCore module scaffold for building new features |
| **[mod-bg-slaveryvalley](https://github.com/Helias/mod-bg-slaveryvalley.git)** | Adds the Slavery Valley battleground complete with objectives and queue hooks |
| **[mod-azerothshard](https://github.com/azerothcore/mod-azerothshard.git)** | Bundles AzerothShard tweaks: utility NPCs, scripted events, and gameplay improvements |
| **[mod-worgoblin](https://github.com/heyitsbench/mod-worgoblin.git)** | Enables Worgen and Goblin characters with DB/DBC adjustments |
| **[eluna-ts](https://github.com/azerothcore/eluna-ts.git)** | Adds a TS-to-Lua workflow so Eluna scripts can be authored with modern tooling |
| **[mod-aio](https://github.com/Rochet2/AIO.git)** | Pure Lua server-client communication system for bidirectional data transmission |
| **[eluna-scripts](https://github.com/Isidorsson/Eluna-scripts.git)** | Collection of Lua scripts for creating custom gameplay mechanics and features |
| **[azerothcore-transmog-3.3.5a](https://github.com/DanieltheDeveloper/azerothcore-transmog-3.3.5a.git)** | Transmogrification system built with AIO and Eluna for changing equipment appearance |
| **[acore-eventscripts](https://github.com/55Honey/Acore_eventScripts.git)** | Lua scripts that spawn custom NPCs with scripted combat and community events |
| **[acore-levelupreward](https://github.com/55Honey/Acore_LevelUpReward.git)** | Rewards players with in-game mail when reaching certain levels |
| **[azerothcore-eluna-accountwide](https://github.com/Aldori15/azerothcore-eluna-accountwide.git)** | Shares achievements, currency, mounts, and reputation across account characters |
| **[acore-exchangenpc](https://github.com/55Honey/Acore_ExchangeNpc.git)** | Spawns a customizable NPC vendor that exchanges materials based on settings |
| **[acore-recruitafriend](https://github.com/55Honey/Acore_RecruitAFriend.git)** | Implements Recruit-a-Friend system with rewards for reaching level milestones |
| **[prestige-and-draft-mode](https://github.com/Youpeoples/Prestige-and-Draft-Mode.git)** | Enables characters to reset to level one for prestige rewards with optional spell selection |
| **[azerothcore-lua-ah-bot](https://github.com/mostlynick3/azerothcore-lua-ah-bot.git)** | Automated auction house bot for buying and selling items |
| **[lua-hardcoremode](https://github.com/HellionOP/Lua-HardcoreMode.git)** | Implements hardcore mode system allowing activation via NPC token |
| **[mod-playerbots](https://github.com/mod-playerbots/mod-playerbots.git)** | Adds scriptable playerbot characters that can form dungeon parties, raid, and PvP with humans |
| **[npcbot-extended-commands](https://github.com/Day36512/Npcbot_Extended_Commands.git)** | Provides gear templates, transmog clearing, and chat features for NPC bots |
| **[azerothcore-lua-multivendor](https://github.com/Shadowveil-WotLK/AzerothCore-lua-MultiVendor.git)** | Enables multiple NPC merchants with database integration |
| **[treasure-chest-system](https://github.com/zyggy123/Treasure-Chest-System.git)** | Allows GMs to create and manage treasure chests with custom loot |
| **[activechat](https://github.com/Day36512/ActiveChat.git)** | Populates artificial world and guild chat to make servers feel more lively |
| **[ultimate-full-loot-pvp](https://github.com/Youpeoples/Ultimate-Full-Loot-Pvp.git)** | Spawns loot chests containing gear and gold when players die in PvP |
#### ✨ Quality of Life
| Module | Description |
|--------|-------------|
| **[mod-aoe-loot](https://github.com/azerothcore/mod-aoe-loot.git)** | Lets characters loot multiple corpses with one click for faster farming |
| **[mod-auto-revive](https://github.com/azerothcore/mod-auto-revive.git)** | Automatically resurrects characters on death—handy for casual PvE or testing realms |
| **[mod-fireworks-on-level](https://github.com/azerothcore/mod-fireworks-on-level.git)** | Spawns celebratory fireworks whenever a player dings a new level |
| **[mod-instance-reset](https://github.com/azerothcore/mod-instance-reset.git)** | Adds commands to reset instances quickly—useful for testing or events |
| **[mod-learn-spells](https://github.com/azerothcore/mod-learn-spells.git)** | Teaches class spells automatically at the correct level to streamline leveling |
| **[mod-solo-lfg](https://github.com/azerothcore/mod-solo-lfg.git)** | A solo-friendly queue that lets every player run dungeons without needing a premade group |
#### ⚔️ Gameplay Enhancement
| Module | Description |
|--------|-------------|
| **[DungeonRespawn](https://github.com/AnchyDev/DungeonRespawn.git)** | Teleports dead players back to the dungeon entrance instead of a distant graveyard |
| **[StatBooster](https://github.com/AnchyDev/StatBooster.git)** | Lets players refine gear stats by rerolling random enchantments with special materials |
| **[horadric-cube-for-world-of-warcraft](https://github.com/TITIaio/Horadric-Cube-for-World-of-Warcraft.git)** | Diablo II-inspired crafting system with item synthesis and transmutation |
| **[acore-carboncopy](https://github.com/55Honey/Acore_CarbonCopy.git)** | Enables creating character copies at specific progression points for twinking |
| **[acore-tempannouncements](https://github.com/55Honey/Acore_TempAnnouncements.git)** | Allows GMs to create temporary server announcements that repeat at intervals |
| **[acore-zonecheck](https://github.com/55Honey/Acore_Zonecheck.git)** | Checks player zones and automatically removes players from restricted areas |
| **[aio-blackjack](https://github.com/Manmadedrummer/AIO-Blackjack.git)** | Implements a Blackjack game for players to gamble against an NPC dealer |
| **[acore-sendandbind](https://github.com/55Honey/Acore_SendAndBind.git)** | Allows admins to send soulbound items to players via command |
| **[lua-hardcoremode](https://github.com/HellionOP/Lua-HardcoreMode.git)** | Implements hardcore mode system allowing activation via NPC token |
| **[mod-TimeIsTime](https://github.com/dunjeon/mod-TimeIsTime.git)** | Adds experimental time-twisting mechanics suited for custom events |
| **[mod-autobalance](https://github.com/azerothcore/mod-autobalance.git)** | Adjusts creature health and damage in real time to keep fights tuned for the current party size |
| **[mod-challenge-modes](https://github.com/ZhengPeiRu21/mod-challenge-modes.git)** | Implements keystone-style timed runs with leaderboards and scaling modifiers |
| **[mod-duel-reset](https://github.com/azerothcore/mod-duel-reset.git)** | Adds some duel reset features |
| **[mod-solocraft](https://github.com/azerothcore/mod-solocraft.git)** | Automatically scales dungeon and raid encounters for solo players or small teams |
#### 🏪 NPC Services
| Module | Description |
|--------|-------------|
| **[azerothcore-lua-multivendor](https://github.com/Shadowveil-WotLK/AzerothCore-lua-MultiVendor.git)** | Enables multiple NPC merchants with database integration |
| **[mod-assistant](https://github.com/noisiver/mod-assistant.git)** | Spawns an all-purpose assistant NPC with heirlooms, professions, and convenience commands |
| **[mod-npc-beastmaster](https://github.com/azerothcore/mod-npc-beastmaster.git)** | Adds an NPC who can teach, reset, and manage hunter pets for convenience |
| **[mod-npc-buffer](https://github.com/azerothcore/mod-npc-buffer.git)** | Provides a ready-to-use buff NPC who hands out class buffs, food, and utility spells |
| **[mod-npc-enchanter](https://github.com/azerothcore/mod-npc-enchanter.git)** | Introduces an enchanting vendor who applies enchants directly for a fee |
| **[mod-npc-free-professions](https://github.com/azerothcore/mod-npc-free-professions.git)** | Makes a ProfessionsNPC who gives 2 free professions (full with recipes) to player |
| **[mod-npc-talent-template](https://github.com/azerothcore/mod-npc-talent-template.git)** | An NPC that allows players to instantly apply pre-configured character templates that gear up, gem, set talents, and apply glyphs for any class |
| **[mod-reagent-bank](https://github.com/ZhengPeiRu21/mod-reagent-bank.git)** | Lets players stash crafting reagents with a dedicated banker NPC |
| **[mod-transmog](https://github.com/azerothcore/mod-transmog.git)** | Adds a transmogrification vendor so players can restyle gear without changing stats |
#### ⚡ PvP
| Module | Description |
|--------|-------------|
| **[mod-1v1-arena](https://github.com/azerothcore/mod-1v1-arena.git)** | Creates a structured 1v1 ranked arena ladder for duel enthusiasts |
| **[mod-arena-replay](https://github.com/azerothcore/mod-arena-replay.git)** | Allows you to watch a replay of rated arena games |
| **[mod-gain-honor-guard](https://github.com/azerothcore/mod-gain-honor-guard.git)** | Awards honor when players kill city guards, spicing up world PvP raids |
| **[mod-phased-duels](https://github.com/azerothcore/mod-phased-duels.git)** | Moves duelers into their own phase to block interference and griefing |
| **[mod-pvp-titles](https://github.com/azerothcore/mod-pvp-titles.git)** | Restores classic honor titles with a configurable ranking ladder |
| **[ultimate-full-loot-pvp](https://github.com/Youpeoples/Ultimate-Full-Loot-Pvp.git)** | Spawns loot chests containing gear and gold when players die in PvP |
#### 📈 Progression
| Module | Description |
|--------|-------------|
| **[mod-dynamic-xp](https://github.com/azerothcore/mod-dynamic-xp.git)** | Tweaks XP gain based on population or custom rules to keep leveling flexible |
| **[mod-individual-progression](https://github.com/ZhengPeiRu21/mod-individual-progression.git)** | Tracks each character through Vanilla → TBC → WotLK progression, unlocking content sequentially |
| **[mod-item-level-up](https://github.com/azerothcore/mod-item-level-up.git)** | Creates an item that allows you to level up (id = 701001) |
| **[mod-progression-system](https://github.com/azerothcore/mod-progression-system.git)** | Allows for the automatic loading of scripts and SQL files based on level brackets |
| **[mod-promotion-azerothcore](https://github.com/azerothcore/mod-promotion-azerothcore.git)** | Allows player to receive a promotion consisting of a level 90 character, backpacks, gold, armor, and a mount |
| **[mod-quest-count-level](https://github.com/michaeldelago/mod-quest-count-level.git)** | Enables leveling exclusively through questing by awarding tokens after quest completion |
| **[mod-weekend-xp](https://github.com/azerothcore/mod-weekend-xp.git)** | XP module that allows server owner to select how much XP players can receive on the weekend via config file |
| **[mod-zone-difficulty](https://github.com/azerothcore/mod-zone-difficulty.git)** | Support module for mod-progression-system, handles nerfs and debuffs per zone |
#### 💰 Economy
| Module | Description |
|--------|-------------|
| **[acore-exchangenpc](https://github.com/55Honey/Acore_ExchangeNpc.git)** | Spawns a customizable NPC vendor that exchanges materials based on settings |
| **[azerothcore-global-mail-banking-auctions](https://github.com/Aldori15/azerothcore-global-mail_banking_auctions.git)** | Allows access to bank, mailbox, and auction house from anywhere via chat commands |
| **[azerothcore-lua-ah-bot](https://github.com/mostlynick3/azerothcore-lua-ah-bot.git)** | Automated auction house bot for buying and selling items |
| **[dynamic-trader](https://github.com/Day36512/Dynamic-Trader.git)** | Provides auction house alternative with dynamic pricing |
| **[lottery-lua](https://github.com/zyggy123/lottery-lua.git)** | Implements customizable lottery system where players can win prizes |
| **[mod-ahbot](https://github.com/azerothcore/mod-ahbot.git)** | Populates the auction house with configurable buying/selling behavior to keep markets active |
| **[mod-black-market](https://github.com/Youpeoples/Black-Market-Auction-House.git)** | Backports the Mists-era Black Market Auction House via Eluna scripts |
| **[mod-random-enchants](https://github.com/azerothcore/mod-random-enchants.git)** | Rolls randomized stat bonuses on loot to add Diablo-style gear chasing |
#### 👥 Social
| Module | Description |
|--------|-------------|
| **[acore-discordnotifier](https://github.com/0xCiBeR/Acore_DiscordNotifier.git)** | Relays in-game chat events to Discord channels |
| **[azerothcore-global-mail-banking-auctions](https://github.com/Aldori15/azerothcore-global-mail_banking_auctions.git)** | Allows access to bank, mailbox, and auction house from anywhere via chat commands |
| **[acore-tempannouncements](https://github.com/55Honey/Acore_TempAnnouncements.git)** | Allows GMs to create temporary server announcements that repeat at intervals |
| **[activechat](https://github.com/Day36512/ActiveChat.git)** | Populates artificial world and guild chat to make servers feel more lively |
| **[mod-boss-announcer](https://github.com/azerothcore/mod-boss-announcer.git)** | Broadcasts dramatic messages when raid bosses fall to your players |
| **[mod-breaking-news-override](https://github.com/azerothcore/mod-breaking-news-override.git)** | Replaces the client breaking-news panel with server-managed announcements |
| **[mod-global-chat](https://github.com/azerothcore/mod-global-chat.git)** | Simple global chat for AzerothCore enabling worldserver-wide messaging functionality |
#### 👤 Account-Wide
| Module | Description |
|--------|-------------|
| **[azerothcore-eluna-accountwide](https://github.com/Aldori15/azerothcore-eluna-accountwide.git)** | Shares achievements, currency, mounts, and reputation across account characters |
| **[mod-account-achievements](https://github.com/azerothcore/mod-account-achievements.git)** | Shares achievements across characters on the same account for persistent milestones |
| **[mod-account-mounts](https://github.com/azerothcore/mod-account-mounts.git)** | Goes through the list of characters on an account to obtain playerGuids and store mount spells that all characters know |
#### 🎨 Customization
| Module | Description |
|--------|-------------|
| **[azerothcore-transmog-3.3.5a](https://github.com/DanieltheDeveloper/azerothcore-transmog-3.3.5a.git)** | Transmogrification system built with AIO and Eluna for changing equipment appearance |
| **[mod-arac](https://github.com/heyitsbench/mod-arac.git)** | Unlocks every race/class pairing so players can roll any combination |
| **[mod-morphsummon](https://github.com/azerothcore/mod-morphsummon.git)** | Change appearance of summoned permanent creatures |
| **[mod-worgoblin](https://github.com/heyitsbench/mod-worgoblin.git)** | Enables Worgen and Goblin characters with DB/DBC adjustments |
#### 📜 Scripting
| Module | Description |
|--------|-------------|
| **[acore-eventscripts](https://github.com/55Honey/Acore_eventScripts.git)** | Lua scripts that spawn custom NPCs with scripted combat and community events |
| **[eluna-scripts](https://github.com/Isidorsson/Eluna-scripts.git)** | Collection of Lua scripts for creating custom gameplay mechanics and features |
| **[eluna-ts](https://github.com/azerothcore/eluna-ts.git)** | Adds a TS-to-Lua workflow so Eluna scripts can be authored with modern tooling |
| **[mod-aio](https://github.com/Rochet2/AIO.git)** | Pure Lua server-client communication system for bidirectional data transmission |
| **[mod-ale](https://github.com/azerothcore/mod-ale.git)** | Adds Eluna Lua scripting engine for creating custom gameplay mechanics |
#### 🔧 Admin Tools
| Module | Description |
|--------|-------------|
| **[acore-carboncopy](https://github.com/55Honey/Acore_CarbonCopy.git)** | Enables creating character copies at specific progression points for twinking |
| **[acore-sendandbind](https://github.com/55Honey/Acore_SendAndBind.git)** | Allows admins to send soulbound items to players via command |
| **[acore-zonecheck](https://github.com/55Honey/Acore_Zonecheck.git)** | Checks player zones and automatically removes players from restricted areas |
| **[mod-antifarming](https://github.com/azerothcore/mod-antifarming.git)** | Port of the AntiFarming Script from SymbolixDEV's repo to AzerothCore |
| **[mod-keep-out](https://github.com/azerothcore/mod-keep-out.git)** | Keeps players who are non-GM from entering a zone/map |
| **[mod-server-auto-shutdown](https://github.com/azerothcore/mod-server-auto-shutdown.git)** | Establishes a daily restart with configurable time, notification period, and custom messages |
| **[mod-spell-regulator](https://github.com/azerothcore/mod-spell-regulator.git)** | Modify the percentage of the spells by regulating in the best way |
| **[mod-who-logged](https://github.com/azerothcore/mod-who-logged.git)** | Outputs to the console when a player logs into the world |
#### 💎 Premium/VIP
| Module | Description |
|--------|-------------|
| **[mod-acore-subscriptions](https://github.com/azerothcore/mod-acore-subscriptions.git)** | Handles the subscription logic, no longer requires modules or services to have subscription logic in their code |
| **[mod-premium](https://github.com/azerothcore/mod-premium.git)** | Adds Premium account features to players |
| **[mod-system-vip](https://github.com/azerothcore/mod-system-vip.git)** | System offering VIP features and benefits to players |
#### 🎮 Mini-Games
| Module | Description |
|--------|-------------|
| **[aio-blackjack](https://github.com/Manmadedrummer/AIO-Blackjack.git)** | Implements a Blackjack game for players to gamble against an NPC dealer |
| **[mod-pocket-portal](https://github.com/azerothcore/mod-pocket-portal.git)** | Gives players a portal gadget for quick travel to configured destinations |
| **[mod-tic-tac-toe](https://github.com/azerothcore/mod-tic-tac-toe.git)** | Allows players to play Tic Tac Toe between players and against different AI |
#### 🏰 Content
| Module | Description |
|--------|-------------|
| **[mod-azerothshard](https://github.com/azerothcore/mod-azerothshard.git)** | Bundles AzerothShard tweaks: utility NPCs, scripted events, and gameplay improvements |
| **[mod-bg-slaveryvalley](https://github.com/Helias/mod-bg-slaveryvalley.git)** | Adds the Slavery Valley battleground complete with objectives and queue hooks |
| **[mod-guildhouse](https://github.com/azerothcore/mod-guildhouse.git)** | Phased guild house system allowing guild members to visit their private guild house |
| **[mod-war-effort](https://github.com/azerothcore/mod-war-effort.git)** | Brings back the war effort of the two factions for the opening of the gates of Ahn'Qiraj |
| **[treasure-chest-system](https://github.com/zyggy123/Treasure-Chest-System.git)** | Allows GMs to create and manage treasure chests with custom loot |
#### 🎁 Rewards
| Module | Description |
|--------|-------------|
| **[acore-levelupreward](https://github.com/55Honey/Acore_LevelUpReward.git)** | Rewards players with in-game mail when reaching certain levels |
| **[acore-recruitafriend](https://github.com/55Honey/Acore_RecruitAFriend.git)** | Implements Recruit-a-Friend system with rewards for reaching level milestones |
| **[mod-resurrection-scroll](https://github.com/azerothcore/mod-resurrection-scroll.git)** | Allows users to grant rested XP bonuses to players who have not logged in X days |
| **[mod-reward-played-time](https://github.com/azerothcore/mod-reward-played-time.git)** | Adds items for players that have stayed logged in for x amount of time |
| **[prestige-and-draft-mode](https://github.com/Youpeoples/Prestige-and-Draft-Mode.git)** | Enables characters to reset to level one for prestige rewards with optional spell selection |
#### 🛠️ Developer Tools
| Module | Description |
|--------|-------------|
| **[skeleton-module](https://github.com/azerothcore/skeleton-module.git)** | Provides a minimal AzerothCore module scaffold for building new features |
### ✅ Automated Configuration
- **Intelligent Database Setup** - Smart backup detection, restoration, and conditional schema import
@@ -901,9 +1009,17 @@ Some modules require additional manual configuration after deployment:
- **NPC spawning required**: Use GM commands to spawn service NPCs
- Examples:
```bash
.npc add 190010 # Transmog NPC
.npc add 290011 # Reagent Bank NPC
# Check module docs for enchanter/beastmaster NPC IDs
.npc add 190010 # Transmog NPC (mod-transmog)
.npc add 601016 # Buff NPC (mod-npc-buffer)
.npc add 601026 # Beastmaster NPC "White Fang" (mod-npc-beastmaster)
.npc add 601015 # Enchanter NPC (mod-npc-enchanter)
.npc add 290011 # Reagent Bank NPC (mod-reagent-bank)
.npc add 500030 # Guild House vendor (mod-guildhouse)
.npc add 601072 # Morph Summon NPC (mod-morphsummon)
.npc add 98500 # Arena Replay NPC (mod-arena-replay)
.npc add 100155 # Tic-Tac-Toe game NPC (mod-tic-tac-toe)
.npc add 1128001 # Mythic Mode NPC (mod-zone-difficulty, spawns in raids/heroic dungeons)
.npc add 1128002 # Mythic Rewards NPC (mod-zone-difficulty)
```
#### mod-arac (All Races All Classes)
@@ -1129,6 +1245,7 @@ rm -rf local-storage/source local-storage/images
- Solo LFG: Queue for a dungeon solo
- Transmog: Use `.npc add 190010` to spawn transmog NPC
- Playerbots: Use `.bot add` command (if enabled)
- See "Module-Specific Requirements" section for complete list of NPC spawn commands
3. **Configure Realmlist** - Update server address in database:
```sql

View File

@@ -11,7 +11,8 @@
"post_install_hooks": [],
"config_cleanup": [
"playerbots.conf*"
]
],
"category": "automation"
},
{
"key": "MODULE_AOE_LOOT",
@@ -23,7 +24,8 @@
"post_install_hooks": [],
"config_cleanup": [
"mod_aoe_loot.conf*"
]
],
"category": "quality-of-life"
},
{
"key": "MODULE_LEARN_SPELLS",
@@ -35,7 +37,8 @@
"post_install_hooks": [],
"config_cleanup": [
"mod_learnspells.conf*"
]
],
"category": "quality-of-life"
},
{
"key": "MODULE_FIREWORKS",
@@ -47,7 +50,8 @@
"post_install_hooks": [],
"config_cleanup": [
"mod_fireworks.conf*"
]
],
"category": "quality-of-life"
},
{
"key": "MODULE_INDIVIDUAL_PROGRESSION",
@@ -59,7 +63,8 @@
"post_install_hooks": [],
"config_cleanup": [
"individual_progression.conf*"
]
],
"category": "progression"
},
{
"key": "MODULE_AHBOT",
@@ -71,7 +76,8 @@
"post_install_hooks": [],
"config_cleanup": [
"mod_ahbot.conf*"
]
],
"category": "economy"
},
{
"key": "MODULE_AUTOBALANCE",
@@ -83,7 +89,8 @@
"config_cleanup": [
"AutoBalance.conf*"
],
"description": "Adjusts creature health and damage in real time to keep fights tuned for the current party size"
"description": "Adjusts creature health and damage in real time to keep fights tuned for the current party size",
"category": "gameplay-enhancement"
},
{
"key": "MODULE_TRANSMOG",
@@ -95,7 +102,8 @@
"config_cleanup": [
"transmog.conf*"
],
"description": "Adds a transmogrification vendor so players can restyle gear without changing stats"
"description": "Adds a transmogrification vendor so players can restyle gear without changing stats",
"category": "npc-service"
},
{
"key": "MODULE_NPC_BUFFER",
@@ -107,7 +115,8 @@
"config_cleanup": [
"npc_buffer.conf*"
],
"description": "Provides a ready-to-use buff NPC who hands out class buffs, food, and utility spells"
"description": "Provides a ready-to-use buff NPC who hands out class buffs, food, and utility spells",
"category": "npc-service"
},
{
"key": "MODULE_DYNAMIC_XP",
@@ -119,7 +128,8 @@
"config_cleanup": [
"Individual-XP.conf*"
],
"description": "Tweaks XP gain based on population or custom rules to keep leveling flexible"
"description": "Tweaks XP gain based on population or custom rules to keep leveling flexible",
"category": "progression"
},
{
"key": "MODULE_SOLO_LFG",
@@ -131,7 +141,8 @@
"config_cleanup": [
"SoloLfg.conf*"
],
"description": "A solo-friendly queue that lets every player run dungeons without needing a premade group"
"description": "A solo-friendly queue that lets every player run dungeons without needing a premade group",
"category": "quality-of-life"
},
{
"key": "MODULE_1V1_ARENA",
@@ -143,7 +154,8 @@
"config_cleanup": [
"1v1arena.conf*"
],
"description": "Creates a structured 1v1 ranked arena ladder for duel enthusiasts"
"description": "Creates a structured 1v1 ranked arena ladder for duel enthusiasts",
"category": "pvp"
},
{
"key": "MODULE_PHASED_DUELS",
@@ -155,7 +167,8 @@
"config_cleanup": [
"phasedduels.conf*"
],
"description": "Moves duelers into their own phase to block interference and griefing"
"description": "Moves duelers into their own phase to block interference and griefing",
"category": "pvp"
},
{
"key": "MODULE_BREAKING_NEWS",
@@ -167,7 +180,8 @@
"config_cleanup": [
"breaking_news.conf*"
],
"description": "Replaces the client breaking-news panel with server-managed announcements"
"description": "Replaces the client breaking-news panel with server-managed announcements",
"category": "social"
},
{
"key": "MODULE_BOSS_ANNOUNCER",
@@ -179,7 +193,8 @@
"config_cleanup": [
"boss_announcer.conf*"
],
"description": "Broadcasts dramatic messages when raid bosses fall to your players"
"description": "Broadcasts dramatic messages when raid bosses fall to your players",
"category": "social"
},
{
"key": "MODULE_ACCOUNT_ACHIEVEMENTS",
@@ -191,7 +206,8 @@
"config_cleanup": [
"account_achievements.conf*"
],
"description": "Shares achievements across characters on the same account for persistent milestones"
"description": "Shares achievements across characters on the same account for persistent milestones",
"category": "account-wide"
},
{
"key": "MODULE_AUTO_REVIVE",
@@ -203,7 +219,8 @@
"config_cleanup": [
"AutoRevive.conf*"
],
"description": "Automatically resurrects characters on death\u2014handy for casual PvE or testing realms"
"description": "Automatically resurrects characters on death\u2014handy for casual PvE or testing realms",
"category": "quality-of-life"
},
{
"key": "MODULE_GAIN_HONOR_GUARD",
@@ -215,7 +232,8 @@
"config_cleanup": [
"GainHonorGuard.conf*"
],
"description": "Awards honor when players kill city guards, spicing up world PvP raids"
"description": "Awards honor when players kill city guards, spicing up world PvP raids",
"category": "pvp"
},
{
"key": "MODULE_ELUNA",
@@ -229,7 +247,8 @@
"config_cleanup": [
"mod_eluna.conf*"
],
"description": "Adds Eluna Lua scripting engine for creating custom gameplay mechanics"
"description": "Adds Eluna Lua scripting engine for creating custom gameplay mechanics",
"category": "scripting"
},
{
"key": "MODULE_TIME_IS_TIME",
@@ -241,7 +260,8 @@
"config_cleanup": [
"mod-time_is_time.conf*"
],
"description": "Adds experimental time-twisting mechanics suited for custom events"
"description": "Adds experimental time-twisting mechanics suited for custom events",
"category": "gameplay-enhancement"
},
{
"key": "MODULE_POCKET_PORTAL",
@@ -255,7 +275,8 @@
"config_cleanup": [
"pocketportal.conf*"
],
"description": "Gives players a portal gadget for quick travel to configured destinations"
"description": "Gives players a portal gadget for quick travel to configured destinations",
"category": "minigame"
},
{
"key": "MODULE_RANDOM_ENCHANTS",
@@ -267,7 +288,8 @@
"config_cleanup": [
"RandomEnchants.conf*"
],
"description": "Rolls randomized stat bonuses on loot to add Diablo-style gear chasing"
"description": "Rolls randomized stat bonuses on loot to add Diablo-style gear chasing",
"category": "economy"
},
{
"key": "MODULE_SOLOCRAFT",
@@ -279,7 +301,8 @@
"config_cleanup": [
"Solocraft.conf*"
],
"description": "Automatically scales dungeon and raid encounters for solo players or small teams"
"description": "Automatically scales dungeon and raid encounters for solo players or small teams",
"category": "gameplay-enhancement"
},
{
"key": "MODULE_PVP_TITLES",
@@ -294,7 +317,8 @@
"description": "Restores classic honor titles with a configurable ranking ladder",
"requires": [
"MODULE_ELUNA"
]
],
"category": "pvp"
},
{
"key": "MODULE_NPC_BEASTMASTER",
@@ -308,7 +332,8 @@
"config_cleanup": [
"npc_beastmaster.conf*"
],
"description": "Adds an NPC who can teach, reset, and manage hunter pets for convenience"
"description": "Adds an NPC who can teach, reset, and manage hunter pets for convenience",
"category": "npc-service"
},
{
"key": "MODULE_NPC_ENCHANTER",
@@ -320,7 +345,8 @@
"config_cleanup": [
"npc_enchanter.conf*"
],
"description": "Introduces an enchanting vendor who applies enchants directly for a fee"
"description": "Introduces an enchanting vendor who applies enchants directly for a fee",
"category": "npc-service"
},
{
"key": "MODULE_INSTANCE_RESET",
@@ -332,7 +358,8 @@
"config_cleanup": [
"instance-reset.conf*"
],
"description": "Adds commands to reset instances quickly\u2014useful for testing or events"
"description": "Adds commands to reset instances quickly\u2014useful for testing or events",
"category": "quality-of-life"
},
{
"key": "MODULE_LEVEL_GRANT",
@@ -344,7 +371,8 @@
"config_cleanup": [
"levelGrant.conf*"
],
"description": "Enables leveling exclusively through questing by awarding tokens after quest completion"
"description": "Enables leveling exclusively through questing by awarding tokens after quest completion",
"category": "progression"
},
{
"key": "MODULE_ARAC",
@@ -356,7 +384,8 @@
"config_cleanup": [
"arac.conf*"
],
"description": "Unlocks every race/class pairing so players can roll any combination"
"description": "Unlocks every race/class pairing so players can roll any combination",
"category": "customization"
},
{
"key": "MODULE_ASSISTANT",
@@ -365,7 +394,8 @@
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"description": "Spawns an all-purpose assistant NPC with heirlooms, professions, and convenience commands"
"description": "Spawns an all-purpose assistant NPC with heirlooms, professions, and convenience commands",
"category": "npc-service"
},
{
"key": "MODULE_REAGENT_BANK",
@@ -374,7 +404,8 @@
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"description": "Lets players stash crafting reagents with a dedicated banker NPC"
"description": "Lets players stash crafting reagents with a dedicated banker NPC",
"category": "npc-service"
},
{
"key": "MODULE_BLACK_MARKET_AUCTION_HOUSE",
@@ -388,7 +419,8 @@
"post_install_hooks": [
"black-market-setup"
],
"description": "Backports the Mists-era Black Market Auction House via Eluna scripts"
"description": "Backports the Mists-era Black Market Auction House via Eluna scripts",
"category": "economy"
},
{
"key": "MODULE_CHALLENGE_MODES",
@@ -397,7 +429,8 @@
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"description": "Implements keystone-style timed runs with leaderboards and scaling modifiers"
"description": "Implements keystone-style timed runs with leaderboards and scaling modifiers",
"category": "gameplay-enhancement"
},
{
"key": "MODULE_OLLAMA_CHAT",
@@ -406,7 +439,8 @@
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"description": "Connects playerbots to an Ollama LLM so they can chat with humans organically"
"description": "Connects playerbots to an Ollama LLM so they can chat with humans organically",
"category": "automation"
},
{
"key": "MODULE_PLAYER_BOT_LEVEL_BRACKETS",
@@ -418,7 +452,8 @@
"MODULE_PLAYERBOTS"
],
"post_install_hooks": [],
"description": "Keeps bot levels spread evenly across configured brackets"
"description": "Keeps bot levels spread evenly across configured brackets",
"category": "automation"
},
{
"key": "MODULE_STATBOOSTER",
@@ -429,7 +464,8 @@
"post_install_hooks": [
"fix-statbooster-api"
],
"description": "Lets players refine gear stats by rerolling random enchantments with special materials"
"description": "Lets players refine gear stats by rerolling random enchantments with special materials",
"category": "gameplay-enhancement"
},
{
"key": "MODULE_DUNGEON_RESPAWN",
@@ -440,7 +476,8 @@
"status": "blocked",
"block_reason": "Upstream override signature mismatch (OnBeforeTeleport); awaiting fix",
"post_install_hooks": [],
"description": "Teleports dead players back to the dungeon entrance instead of a distant graveyard"
"description": "Teleports dead players back to the dungeon entrance instead of a distant graveyard",
"category": "gameplay-enhancement"
},
{
"key": "MODULE_SKELETON_MODULE",
@@ -449,7 +486,8 @@
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"description": "Provides a minimal AzerothCore module scaffold for building new features"
"description": "Provides a minimal AzerothCore module scaffold for building new features",
"category": "developer"
},
{
"key": "MODULE_BG_SLAVERYVALLEY",
@@ -461,7 +499,8 @@
"description": "Adds the Slavery Valley battleground complete with objectives and queue hooks",
"requires": [
"MODULE_ELUNA"
]
],
"category": "content"
},
{
"key": "MODULE_AZEROTHSHARD",
@@ -470,7 +509,8 @@
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"description": "Bundles AzerothShard tweaks: utility NPCs, scripted events, and gameplay improvements"
"description": "Bundles AzerothShard tweaks: utility NPCs, scripted events, and gameplay improvements",
"category": "content"
},
{
"key": "MODULE_WORGOBLIN",
@@ -482,7 +522,8 @@
"description": "Enables Worgen and Goblin characters with DB/DBC adjustments",
"requires": [
"MODULE_ELUNA"
]
],
"category": "customization"
},
{
"key": "MODULE_ELUNA_TS",
@@ -494,7 +535,8 @@
"MODULE_ELUNA"
],
"post_install_hooks": [],
"description": "Adds a TS-to-Lua workflow so Eluna scripts can be authored with modern tooling"
"description": "Adds a TS-to-Lua workflow so Eluna scripts can be authored with modern tooling",
"category": "scripting"
},
{
"key": "MODULE_AIO",
@@ -504,7 +546,8 @@
"type": "cpp",
"notes": "Azeroth Interface Override - enables client-server interface communication",
"post_install_hooks": [],
"description": "Pure Lua server-client communication system for bidirectional data transmission"
"description": "Pure Lua server-client communication system for bidirectional data transmission",
"category": "scripting"
},
{
"key": "MODULE_ELUNA_SCRIPTS",
@@ -518,7 +561,8 @@
"post_install_hooks": [
"copy-standard-lua"
],
"description": "Collection of Lua scripts for creating custom gameplay mechanics and features"
"description": "Collection of Lua scripts for creating custom gameplay mechanics and features",
"category": "scripting"
},
{
"key": "MODULE_TRANSMOG_AIO",
@@ -532,7 +576,8 @@
"post_install_hooks": [
"copy-aio-lua"
],
"description": "Transmogrification system built with AIO and Eluna for changing equipment appearance"
"description": "Transmogrification system built with AIO and Eluna for changing equipment appearance",
"category": "customization"
},
{
"key": "MODULE_EVENT_SCRIPTS",
@@ -546,7 +591,8 @@
"post_install_hooks": [
"copy-standard-lua"
],
"description": "Lua scripts that spawn custom NPCs with scripted combat and community events"
"description": "Lua scripts that spawn custom NPCs with scripted combat and community events",
"category": "scripting"
},
{
"key": "MODULE_LEVEL_UP_REWARD",
@@ -560,7 +606,8 @@
"post_install_hooks": [
"copy-standard-lua"
],
"description": "Rewards players with in-game mail when reaching certain levels"
"description": "Rewards players with in-game mail when reaching certain levels",
"category": "rewards"
},
{
"key": "MODULE_ACCOUNTWIDE_SYSTEMS",
@@ -574,7 +621,8 @@
"post_install_hooks": [
"copy-standard-lua"
],
"description": "Shares achievements, currency, mounts, and reputation across account characters"
"description": "Shares achievements, currency, mounts, and reputation across account characters",
"category": "account-wide"
},
{
"key": "MODULE_EXCHANGE_NPC",
@@ -588,7 +636,8 @@
"post_install_hooks": [
"copy-standard-lua"
],
"description": "Spawns a customizable NPC vendor that exchanges materials based on settings"
"description": "Spawns a customizable NPC vendor that exchanges materials based on settings",
"category": "economy"
},
{
"key": "MODULE_RECRUIT_A_FRIEND",
@@ -602,7 +651,8 @@
"post_install_hooks": [
"copy-standard-lua"
],
"description": "Implements Recruit-a-Friend system with rewards for reaching level milestones"
"description": "Implements Recruit-a-Friend system with rewards for reaching level milestones",
"category": "rewards"
},
{
"key": "MODULE_PRESTIGE_DRAFT_MODE",
@@ -616,7 +666,8 @@
"post_install_hooks": [
"copy-standard-lua"
],
"description": "Enables characters to reset to level one for prestige rewards with optional spell selection"
"description": "Enables characters to reset to level one for prestige rewards with optional spell selection",
"category": "rewards"
},
{
"key": "MODULE_LUA_AH_BOT",
@@ -630,7 +681,8 @@
"post_install_hooks": [
"copy-standard-lua"
],
"description": "Automated auction house bot for buying and selling items"
"description": "Automated auction house bot for buying and selling items",
"category": "economy"
},
{
"key": "MODULE_HARDCORE_MODE",
@@ -644,7 +696,8 @@
"post_install_hooks": [
"copy-standard-lua"
],
"description": "Implements hardcore mode system allowing activation via NPC token"
"description": "Implements hardcore mode system allowing activation via NPC token",
"category": "gameplay-enhancement"
},
{
"key": "MODULE_NPCBOT_EXTENDED_COMMANDS",
@@ -658,7 +711,8 @@
"post_install_hooks": [
"copy-standard-lua"
],
"description": "Provides gear templates, transmog clearing, and chat features for NPC bots"
"description": "Provides gear templates, transmog clearing, and chat features for NPC bots",
"category": "automation"
},
{
"key": "MODULE_MULTIVENDOR",
@@ -672,7 +726,8 @@
"post_install_hooks": [
"copy-standard-lua"
],
"description": "Enables multiple NPC merchants with database integration"
"description": "Enables multiple NPC merchants with database integration",
"category": "npc-service"
},
{
"key": "MODULE_TREASURE_CHEST_SYSTEM",
@@ -686,7 +741,8 @@
"post_install_hooks": [
"copy-standard-lua"
],
"description": "Allows GMs to create and manage treasure chests with custom loot"
"description": "Allows GMs to create and manage treasure chests with custom loot",
"category": "content"
},
{
"key": "MODULE_ACTIVE_CHAT",
@@ -700,7 +756,8 @@
"post_install_hooks": [
"copy-standard-lua"
],
"description": "Populates artificial world and guild chat to make servers feel more lively"
"description": "Populates artificial world and guild chat to make servers feel more lively",
"category": "social"
},
{
"key": "MODULE_ULTIMATE_FULL_LOOT_PVP",
@@ -714,7 +771,8 @@
"post_install_hooks": [
"copy-standard-lua"
],
"description": "Spawns loot chests containing gear and gold when players die in PvP"
"description": "Spawns loot chests containing gear and gold when players die in PvP",
"category": "pvp"
},
{
"key": "MODULE_HORADRIC_CUBE",
@@ -728,7 +786,8 @@
"post_install_hooks": [
"copy-standard-lua"
],
"description": "Diablo II-inspired crafting system with item synthesis and transmutation"
"description": "Diablo II-inspired crafting system with item synthesis and transmutation",
"category": "gameplay-enhancement"
},
{
"key": "MODULE_CARBON_COPY",
@@ -742,7 +801,8 @@
"post_install_hooks": [
"copy-standard-lua"
],
"description": "Enables creating character copies at specific progression points for twinking"
"description": "Enables creating character copies at specific progression points for twinking",
"category": "admin"
},
{
"key": "MODULE_TEMP_ANNOUNCEMENTS",
@@ -756,7 +816,8 @@
"post_install_hooks": [
"copy-standard-lua"
],
"description": "Allows GMs to create temporary server announcements that repeat at intervals"
"description": "Allows GMs to create temporary server announcements that repeat at intervals",
"category": "social"
},
{
"key": "MODULE_ZONE_CHECK",
@@ -770,7 +831,8 @@
"post_install_hooks": [
"copy-standard-lua"
],
"description": "Checks player zones and automatically removes players from restricted areas"
"description": "Checks player zones and automatically removes players from restricted areas",
"category": "admin"
},
{
"key": "MODULE_AIO_BLACKJACK",
@@ -784,7 +846,8 @@
"post_install_hooks": [
"copy-aio-lua"
],
"description": "Implements a Blackjack game for players to gamble against an NPC dealer"
"description": "Implements a Blackjack game for players to gamble against an NPC dealer",
"category": "minigame"
},
{
"key": "MODULE_SEND_AND_BIND",
@@ -798,7 +861,8 @@
"post_install_hooks": [
"copy-standard-lua"
],
"description": "Allows admins to send soulbound items to players via command"
"description": "Allows admins to send soulbound items to players via command",
"category": "admin"
},
{
"key": "MODULE_DYNAMIC_TRADER",
@@ -812,7 +876,8 @@
"post_install_hooks": [
"copy-standard-lua"
],
"description": "Provides auction house alternative with dynamic pricing"
"description": "Provides auction house alternative with dynamic pricing",
"category": "economy"
},
{
"key": "MODULE_LOTTERY_LUA",
@@ -826,7 +891,8 @@
"post_install_hooks": [
"copy-standard-lua"
],
"description": "Implements customizable lottery system where players can win prizes"
"description": "Implements customizable lottery system where players can win prizes",
"category": "economy"
},
{
"key": "MODULE_DISCORD_NOTIFIER",
@@ -840,7 +906,8 @@
"post_install_hooks": [
"copy-standard-lua"
],
"description": "Relays in-game chat events to Discord channels"
"description": "Relays in-game chat events to Discord channels",
"category": "social"
},
{
"key": "MODULE_GLOBAL_MAIL_BANKING_AUCTIONS",
@@ -854,7 +921,319 @@
"post_install_hooks": [
"copy-standard-lua"
],
"description": "Allows access to bank, mailbox, and auction house from anywhere via chat commands"
"description": "Allows access to bank, mailbox, and auction house from anywhere via chat commands",
"category": "economy"
},
{
"key": "MODULE_GUILDHOUSE",
"name": "mod-guildhouse",
"repo": "https://github.com/azerothcore/mod-guildhouse.git",
"description": "Phased guild house system allowing guild members to visit their private guild house",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [
"mod_guildhouse.conf*"
],
"category": "content"
},
{
"key": "MODULE_PROGRESSION_SYSTEM",
"name": "mod-progression-system",
"repo": "https://github.com/azerothcore/mod-progression-system.git",
"description": "Allows for the automatic loading of scripts and SQL files based on level brackets",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [
"progression_system.conf*"
],
"notes": "SQL files cannot be unloaded once executed; requires auto DB updater enabled in worldserver config",
"category": "progression"
},
{
"key": "MODULE_NPC_FREE_PROFESSIONS",
"name": "mod-npc-free-professions",
"repo": "https://github.com/azerothcore/mod-npc-free-professions.git",
"description": "Makes a ProfessionsNPC who gives 2 free professions (full with recipes) to player",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [],
"category": "npc-service"
},
{
"key": "MODULE_DUEL_RESET",
"name": "mod-duel-reset",
"repo": "https://github.com/azerothcore/mod-duel-reset.git",
"description": "Adds some duel reset features",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [
"duelreset.conf*"
],
"category": "gameplay-enhancement"
},
{
"key": "MODULE_ZONE_DIFFICULTY",
"name": "mod-zone-difficulty",
"repo": "https://github.com/azerothcore/mod-zone-difficulty.git",
"description": "Support module for mod-progression-system, handles nerfs and debuffs per zone",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [],
"notes": "Mythicmode NPC 1128001 spawned in raids/heroic dungeons; NPC 1128002 for Mythicmode rewards",
"category": "progression"
},
{
"key": "MODULE_MORPHSUMMON",
"name": "mod-morphsummon",
"repo": "https://github.com/azerothcore/mod-morphsummon.git",
"description": "Change appearance of summoned permanent creatures",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [
"morphsummon.conf*"
],
"notes": "Allows customization of summoned creature appearances (Warlock demons, Death Knight ghouls, Mage water elementals); NPC ID: 601072",
"category": "customization"
},
{
"key": "MODULE_SPELL_REGULATOR",
"name": "mod-spell-regulator",
"repo": "https://github.com/azerothcore/mod-spell-regulator.git",
"description": "Modify the percentage of the spells by regulating in the best way",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [],
"notes": "WARNING: Custom code changes mandatory before module functions; requires custom hooks from external gist",
"category": "admin"
},
{
"key": "MODULE_WEEKEND_XP",
"name": "mod-weekend-xp",
"repo": "https://github.com/azerothcore/mod-weekend-xp.git",
"description": "XP module that allows server owner to select how much XP players can receive on the weekend via config file",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [
"mod-double-xp-weekend.conf*"
],
"category": "progression"
},
{
"key": "MODULE_REWARD_PLAYED_TIME",
"name": "mod-reward-played-time",
"repo": "https://github.com/azerothcore/mod-reward-played-time.git",
"description": "Adds items for players that have stayed logged in for x amount of time",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [
"reward_system.conf*"
],
"category": "rewards"
},
{
"key": "MODULE_RESURRECTION_SCROLL",
"name": "mod-resurrection-scroll",
"repo": "https://github.com/azerothcore/mod-resurrection-scroll.git",
"description": "Allows users to grant rested XP bonuses to players who have not logged in X days",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [],
"notes": "Requires EnablePlayerSettings to be enabled in worldserver config file",
"category": "rewards"
},
{
"key": "MODULE_ITEM_LEVEL_UP",
"name": "mod-item-level-up",
"repo": "https://github.com/azerothcore/mod-item-level-up.git",
"description": "Creates an item that allows you to level up (id = 701001)",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [],
"category": "progression"
},
{
"key": "MODULE_NPC_TALENT_TEMPLATE",
"name": "mod-npc-talent-template",
"repo": "https://github.com/azerothcore/mod-npc-talent-template.git",
"description": "An NPC that allows players to instantly apply pre-configured character templates that gear up, gem, set talents, and apply glyphs for any class",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [],
"notes": "Admin commands: .templatenpc create [TemplateName] and .templatenpc reload",
"category": "npc-service"
},
{
"key": "MODULE_GLOBAL_CHAT",
"name": "mod-global-chat",
"repo": "https://github.com/azerothcore/mod-global-chat.git",
"description": "Simple global chat for AzerothCore enabling worldserver-wide messaging functionality",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [
"GlobalChat.conf*"
],
"category": "social"
},
{
"key": "MODULE_PREMIUM",
"name": "mod-premium",
"repo": "https://github.com/azerothcore/mod-premium.git",
"description": "Adds Premium account features to players",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [
"premium.conf*"
],
"notes": "Script must be assigned to an item (like hearthstone) using script name 'premium_account'",
"category": "premium"
},
{
"key": "MODULE_SYSTEM_VIP",
"name": "mod-system-vip",
"repo": "https://github.com/azerothcore/mod-system-vip.git",
"description": "System offering VIP features and benefits to players",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [
"SystemVip.conf*"
],
"category": "premium"
},
{
"key": "MODULE_ACORE_SUBSCRIPTIONS",
"name": "mod-acore-subscriptions",
"repo": "https://github.com/azerothcore/mod-acore-subscriptions.git",
"description": "Handles the subscription logic, no longer requires modules or services to have subscription logic in their code",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [],
"category": "premium"
},
{
"key": "MODULE_KEEP_OUT",
"name": "mod-keep-out",
"repo": "https://github.com/azerothcore/mod-keep-out.git",
"description": "Keeps players who are non-GM from entering a zone/map",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [],
"notes": "Requires editing database table mod_mko_map_lock; use .gps command to obtain map and zone IDs",
"category": "admin"
},
{
"key": "MODULE_SERVER_AUTO_SHUTDOWN",
"name": "mod-server-auto-shutdown",
"repo": "https://github.com/azerothcore/mod-server-auto-shutdown.git",
"description": "Establishes a daily restart with configurable time, notification period, and custom messages",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [],
"category": "admin"
},
{
"key": "MODULE_WHO_LOGGED",
"name": "mod-who-logged",
"repo": "https://github.com/azerothcore/mod-who-logged.git",
"description": "Outputs to the console when a player logs into the world",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [
"who-logged.conf*"
],
"category": "admin"
},
{
"key": "MODULE_ACCOUNT_MOUNTS",
"name": "mod-account-mounts",
"repo": "https://github.com/azerothcore/mod-account-mounts.git",
"description": "Goes through the list of characters on an account to obtain playerGuids and store mount spells that all characters know",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [],
"category": "account-wide"
},
{
"key": "MODULE_ANTIFARMING",
"name": "mod-antifarming",
"repo": "https://github.com/azerothcore/mod-antifarming.git",
"description": "Port of the AntiFarming Script from SymbolixDEV's repo to AzerothCore",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [
"AntiFarming.conf*"
],
"category": "admin"
},
{
"key": "MODULE_ARENA_REPLAY",
"name": "mod-arena-replay",
"repo": "https://github.com/azerothcore/mod-arena-replay.git",
"description": "Allows you to watch a replay of rated arena games",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [],
"notes": "NPC ID: 98500; known issue: players who were participants experience unusual behavior when watching their own replay",
"category": "pvp"
},
{
"key": "MODULE_TIC_TAC_TOE",
"name": "mod-tic-tac-toe",
"repo": "https://github.com/azerothcore/mod-tic-tac-toe.git",
"description": "Allows players to play Tic Tac Toe between players and against different AI",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [],
"notes": "NPC ID: 100155",
"category": "minigame"
},
{
"key": "MODULE_WAR_EFFORT",
"name": "mod-war-effort",
"repo": "https://github.com/azerothcore/mod-war-effort.git",
"description": "Brings back the war effort of the two factions for the opening of the gates of Ahn'Qiraj",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [
"mod_aq_war_effort.conf*"
],
"category": "content"
},
{
"key": "MODULE_PROMOTION_AZEROTHCORE",
"name": "mod-promotion-azerothcore",
"repo": "https://github.com/azerothcore/mod-promotion-azerothcore.git",
"description": "Allows player to receive a promotion consisting of a level 90 character, backpacks, gold, armor, and a mount",
"needs_build": true,
"type": "cpp",
"post_install_hooks": [],
"config_cleanup": [
"mod_promotion.conf*"
],
"category": "progression"
}
]
}
}

View File

@@ -0,0 +1 @@
MODULE_1V1_ARENA,MODULE_ACCOUNTWIDE_SYSTEMS,MODULE_ACCOUNT_ACHIEVEMENTS,MODULE_ACCOUNT_MOUNTS,MODULE_ACORE_SUBSCRIPTIONS,MODULE_ACTIVE_CHAT,MODULE_AHBOT,MODULE_AIO,MODULE_AIO_BLACKJACK,MODULE_ANTIFARMING,MODULE_AOE_LOOT,MODULE_ARAC,MODULE_ARENA_REPLAY,MODULE_ASSISTANT,MODULE_AUTOBALANCE,MODULE_AUTO_REVIVE,MODULE_AZEROTHSHARD,MODULE_BG_SLAVERYVALLEY,MODULE_BLACK_MARKET_AUCTION_HOUSE,MODULE_BOSS_ANNOUNCER,MODULE_BREAKING_NEWS,MODULE_CARBON_COPY,MODULE_CHALLENGE_MODES,MODULE_DISCORD_NOTIFIER,MODULE_DUEL_RESET,MODULE_DUNGEON_RESPAWN,MODULE_DYNAMIC_TRADER,MODULE_DYNAMIC_XP,MODULE_ELUNA,MODULE_ELUNA_SCRIPTS,MODULE_ELUNA_TS,MODULE_EVENT_SCRIPTS,MODULE_EXCHANGE_NPC,MODULE_FIREWORKS,MODULE_GAIN_HONOR_GUARD,MODULE_GLOBAL_CHAT,MODULE_GLOBAL_MAIL_BANKING_AUCTIONS,MODULE_GUILDHOUSE,MODULE_HARDCORE_MODE,MODULE_HORADRIC_CUBE,MODULE_INDIVIDUAL_PROGRESSION,MODULE_INSTANCE_RESET,MODULE_ITEM_LEVEL_UP,MODULE_KEEP_OUT,MODULE_LEARN_SPELLS,MODULE_LEVEL_GRANT,MODULE_LEVEL_UP_REWARD,MODULE_LOTTERY_LUA,MODULE_LUA_AH_BOT,MODULE_MORPHSUMMON,MODULE_MULTIVENDOR,MODULE_NPCBOT_EXTENDED_COMMANDS,MODULE_NPC_BEASTMASTER,MODULE_NPC_BUFFER,MODULE_NPC_ENCHANTER,MODULE_NPC_FREE_PROFESSIONS,MODULE_NPC_TALENT_TEMPLATE,MODULE_OLLAMA_CHAT,MODULE_PHASED_DUELS,MODULE_PLAYERBOTS,MODULE_PLAYER_BOT_LEVEL_BRACKETS,MODULE_POCKET_PORTAL,MODULE_PREMIUM,MODULE_PRESTIGE_DRAFT_MODE,MODULE_PROGRESSION_SYSTEM,MODULE_PROMOTION_AZEROTHCORE,MODULE_PVP_TITLES,MODULE_RANDOM_ENCHANTS,MODULE_REAGENT_BANK,MODULE_RECRUIT_A_FRIEND,MODULE_RESURRECTION_SCROLL,MODULE_REWARD_PLAYED_TIME,MODULE_SEND_AND_BIND,MODULE_SERVER_AUTO_SHUTDOWN,MODULE_SOLOCRAFT,MODULE_SOLO_LFG,MODULE_STATBOOSTER,MODULE_SYSTEM_VIP,MODULE_TEMP_ANNOUNCEMENTS,MODULE_TIC_TAC_TOE,MODULE_TIME_IS_TIME,MODULE_TRANSMOG,MODULE_TRANSMOG_AIO,MODULE_TREASURE_CHEST_SYSTEM,MODULE_ULTIMATE_FULL_LOOT_PVP,MODULE_WAR_EFFORT,MODULE_WEEKEND_XP,MODULE_WHO_LOGGED,MODULE_WORGOBLIN,MODULE_ZONE_CHECK,MODULE_ZONE_DIFFICULTY

108
setup.sh
View File

@@ -360,6 +360,7 @@ declare -A MODULE_NEEDS_BUILD_MAP=()
declare -A MODULE_REQUIRES_MAP=()
declare -A MODULE_NOTES_MAP=()
declare -A MODULE_DESCRIPTION_MAP=()
declare -A MODULE_CATEGORY_MAP=()
declare -A MODULE_DEFAULT_VALUES=()
declare -A KNOWN_MODULE_LOOKUP=()
declare -A ENV_TEMPLATE_VALUES=()
@@ -418,13 +419,14 @@ PY
exit 1
fi
while IFS=$'\t' read -r key name needs_build module_type status block_reason requires notes description; do
while IFS=$'\t' read -r key name needs_build module_type status block_reason requires notes description category; do
[ -n "$key" ] || continue
# Convert placeholder back to empty string
[ "$block_reason" = "-" ] && block_reason=""
[ "$requires" = "-" ] && requires=""
[ "$notes" = "-" ] && notes=""
[ "$description" = "-" ] && description=""
[ "$category" = "-" ] && category=""
MODULE_NAME_MAP["$key"]="$name"
MODULE_NEEDS_BUILD_MAP["$key"]="$needs_build"
MODULE_TYPE_MAP["$key"]="$module_type"
@@ -433,6 +435,7 @@ PY
MODULE_REQUIRES_MAP["$key"]="$requires"
MODULE_NOTES_MAP["$key"]="$notes"
MODULE_DESCRIPTION_MAP["$key"]="$description"
MODULE_CATEGORY_MAP["$key"]="$category"
KNOWN_MODULE_LOOKUP["$key"]=1
done < <(
python3 - "$MODULE_MANIFEST_PATH" <<'PY'
@@ -464,7 +467,8 @@ for entry in manifest.get("modules", []):
requires_csv = ",".join(ordered) if ordered else "-"
notes = clean(entry.get("notes", ""))
description = clean(entry.get("description", ""))
print("\t".join([key, name, needs_build, module_type, status, block_reason, requires_csv, notes, description]))
category = clean(entry.get("category", ""))
print("\t".join([key, name, needs_build, module_type, status, block_reason, requires_csv, notes, description, category]))
PY
)
@@ -1129,7 +1133,7 @@ fi
module_mode_label="preset 2 (Playerbots + Suggested)"
elif [ "$MODE_SELECTION" = "3" ]; then
MODE_PRESET_NAME=""
say INFO "Answer y/n for each module"
say INFO "Answer y/n for each module (organized by category)"
for key in "${!DISABLED_MODULE_REASONS[@]}"; do
say WARNING "${key#MODULE_}: ${DISABLED_MODULE_REASONS[$key]}"
done
@@ -1137,35 +1141,87 @@ fi
if [ ${#selection_keys[@]} -eq 0 ]; then
selection_keys=("${MODULE_KEYS[@]}")
fi
# Define category display order and titles
local -a category_order=(
"automation" "quality-of-life" "gameplay-enhancement" "npc-service"
"pvp" "progression" "economy" "social" "account-wide"
"customization" "scripting" "admin" "premium" "minigame"
"content" "rewards" "developer"
)
declare -A category_titles=(
["automation"]="🤖 Automation"
["quality-of-life"]="✨ Quality of Life"
["gameplay-enhancement"]="⚔️ Gameplay Enhancement"
["npc-service"]="🏪 NPC Services"
["pvp"]="⚡ PvP"
["progression"]="📈 Progression"
["economy"]="💰 Economy"
["social"]="👥 Social"
["account-wide"]="👤 Account-Wide"
["customization"]="🎨 Customization"
["scripting"]="📜 Scripting"
["admin"]="🔧 Admin Tools"
["premium"]="💎 Premium/VIP"
["minigame"]="🎮 Mini-Games"
["content"]="🏰 Content"
["rewards"]="🎁 Rewards"
["developer"]="🛠️ Developer Tools"
)
# Group modules by category
declare -A modules_by_category
local key
for key in "${selection_keys[@]}"; do
[ -n "${KNOWN_MODULE_LOOKUP[$key]:-}" ] || continue
local status_lc="${MODULE_STATUS_MAP[$key],,}"
if [ -n "$status_lc" ] && [ "$status_lc" != "active" ]; then
local reason="${MODULE_BLOCK_REASON_MAP[$key]:-Blocked in manifest}"
say WARNING "${key#MODULE_} is blocked: ${reason}"
printf -v "$key" '%s' "0"
continue
fi
local prompt_label
prompt_label="$(module_display_name "$key")"
if [ "${MODULE_NEEDS_BUILD_MAP[$key]}" = "1" ]; then
prompt_label="${prompt_label} (requires build)"
fi
local description="${MODULE_DESCRIPTION_MAP[$key]:-}"
if [ -n "$description" ]; then
printf '%b\n' "${BLUE} ${MODULE_NAME_MAP[$key]:-$key}: ${description}${NC}"
fi
local default_answer
default_answer="$(module_default "$key")"
local response
response=$(ask_yn "$prompt_label" "$default_answer")
if [ "$response" = "1" ]; then
printf -v "$key" '%s' "1"
local category="${MODULE_CATEGORY_MAP[$key]:-uncategorized}"
if [ -z "${modules_by_category[$category]:-}" ]; then
modules_by_category[$category]="$key"
else
printf -v "$key" '%s' "0"
modules_by_category[$category]="${modules_by_category[$category]} $key"
fi
done
# Process modules by category
local cat
for cat in "${category_order[@]}"; do
local module_list="${modules_by_category[$cat]:-}"
[ -n "$module_list" ] || continue
# Display category header
local cat_title="${category_titles[$cat]:-$cat}"
printf '\n%b\n' "${BOLD}${CYAN}═══ ${cat_title} ═══${NC}"
# Process modules in this category
for key in $module_list; do
[ -n "${KNOWN_MODULE_LOOKUP[$key]:-}" ] || continue
local status_lc="${MODULE_STATUS_MAP[$key],,}"
if [ -n "$status_lc" ] && [ "$status_lc" != "active" ]; then
local reason="${MODULE_BLOCK_REASON_MAP[$key]:-Blocked in manifest}"
say WARNING "${key#MODULE_} is blocked: ${reason}"
printf -v "$key" '%s' "0"
continue
fi
local prompt_label
prompt_label="$(module_display_name "$key")"
if [ "${MODULE_NEEDS_BUILD_MAP[$key]}" = "1" ]; then
prompt_label="${prompt_label} (requires build)"
fi
local description="${MODULE_DESCRIPTION_MAP[$key]:-}"
if [ -n "$description" ]; then
printf '%b\n' "${BLUE} ${MODULE_NAME_MAP[$key]:-$key}: ${description}${NC}"
fi
local default_answer
default_answer="$(module_default "$key")"
local response
response=$(ask_yn "$prompt_label" "$default_answer")
if [ "$response" = "1" ]; then
printf -v "$key" '%s' "1"
else
printf -v "$key" '%s' "0"
fi
done
done
module_mode_label="preset 3 (Manual)"
elif [ "$MODE_SELECTION" = "4" ]; then
for key in "${MODULE_KEYS[@]}"; do