mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-05-10 11:03:51 +00:00
Novel open replacement for AzerothCore-style guild +
guild_member + guild_rank + guild_bank_tab + guild_perk
SQL tables. The 36th open format added to the editor.
Each guild entry holds the complete social-organization
state: header (name, leader, faction, MOTD, info,
creation date, level + experience, bank money, packed
emblem), rank ladder with permissions bitmask + daily
withdraw caps, member roster with rank + join date +
public/officer notes, bank tabs with per-tab and per-rank
deposit / withdraw / view permission masks, and purchased
guild perks referencing WSPL spell IDs.
Cross-references with previously-added formats:
WGLD.entry.factionId ~ WCHC.race.factionId
(guilds are faction-locked)
WGLD.entry.perks.spellId -> WSPL.entry.spellId
Format:
• magic "WGLD", version 1, little-endian
• per guild: header (12 scalar fields + 4 strings) +
ranks[] + members[] + bankTabs[] + perks[]
• per rank: rankIndex / name / permissionsMask /
moneyPerDayCopper
• per member: characterName / rankIndex / joinedDate /
publicNote / officerNote
• per bankTab: tabIndex / name / iconPath /
deposit+withdraw+view permission masks
• per perk: perkId / name / spellId / requiredGuildLevel
Enums:
• Faction (2): Alliance / Horde
• RankPermissionFlags (14): GuildChat / OfficerChat /
Invite / Remove / Promote /
Demote / SetMotd /
EditPublicNote /
EditOfficerNote / ViewBank /
Deposit / Withdraw / Disband /
RepairFromBank
API: WoweeGuildLoader::save / load / exists / findById +
shared addDefaultRanks helper used by both starter and
faction-pair presets.
Three preset emitters:
• makeStarter — 1 small guild, default 5-rank ladder
(GM/Officer/Veteran/Member/Initiate),
3 members borrowing names from WCRT
merchants for cross-format consistency
• makeFull — 1 fleshed-out guild: 6 ranks (with
Recruit added) + 8 members + 4 bank
tabs (officer-only withdraw on tabs
3+4) + 3 perks referencing WSPL
spell IDs (Heroic Strike / Battle
Shout / Thunder Clap as placeholder
perk procs)
• makeFactionPair — 2 parallel guilds, one Alliance + one
Horde, with identical rank structures
CLI added (5 flags, 649 documented total now):
--gen-guilds / --gen-guilds-full / --gen-guilds-pair
--info-wgld / --validate-wgld
Validator catches: guildId=0 + duplicates, empty name /
leaderName, factionId out of range, no ranks (members can't
exist without a rank ladder), member.rankIndex exceeding
the highest defined rank (intra-format cross-reference
resolution), duplicate bank tabIndices, perks with
spellId=0 (perk does nothing).
|
||
|---|---|---|
| .. | ||
| adt_loader.hpp | ||
| asset_manager.hpp | ||
| asset_manifest.hpp | ||
| blp_loader.hpp | ||
| custom_zone_discovery.hpp | ||
| dbc_layout.hpp | ||
| dbc_loader.hpp | ||
| loose_file_reader.hpp | ||
| m2_loader.hpp | ||
| terrain_mesh.hpp | ||
| wdt_loader.hpp | ||
| wmo_loader.hpp | ||
| wowee_achievements.hpp | ||
| wowee_battlegrounds.hpp | ||
| wowee_building.hpp | ||
| wowee_chars.hpp | ||
| wowee_collision.hpp | ||
| wowee_creatures.hpp | ||
| wowee_events.hpp | ||
| wowee_factions.hpp | ||
| wowee_gems.hpp | ||
| wowee_gossip.hpp | ||
| wowee_guilds.hpp | ||
| wowee_items.hpp | ||
| wowee_light.hpp | ||
| wowee_locks.hpp | ||
| wowee_loot.hpp | ||
| wowee_mail.hpp | ||
| wowee_maps.hpp | ||
| wowee_model.hpp | ||
| wowee_mounts.hpp | ||
| wowee_objects.hpp | ||
| wowee_quests.hpp | ||
| wowee_skills.hpp | ||
| wowee_sound.hpp | ||
| wowee_spawns.hpp | ||
| wowee_spells.hpp | ||
| wowee_talents.hpp | ||
| wowee_taxi.hpp | ||
| wowee_terrain_loader.hpp | ||
| wowee_titles.hpp | ||
| wowee_tokens.hpp | ||
| wowee_trainers.hpp | ||
| wowee_triggers.hpp | ||
| wowee_weather.hpp | ||
| wowee_world_map.hpp | ||