Commit Graph
115 Commits
Author SHA1 Message Date
luis f212322bce Shop: give a boosted character its level, its kit and its glue-screen look 2026-08-15 20:23:20 -03:00
luis 0d449bd968 start mission 2026-08-15 14:08:54 -03:00
Céfiro_Caecias c38e83e82f Update 2026_08_14_07_covenant.sql 2026-08-15 11:27:14 -03:00
Céfiro_Caecias deb5052650 Update 2026_08_14_07_covenant.sql 2026-08-15 11:14:19 -03:00
Céfiro_Caecias 213762461d Update 2026_08_14_07_covenant.sql 2026-08-15 11:06:42 -03:00
Céfiro_Caecias 7eca784712 Update 2026_08_14_07_covenant.sql 2026-08-15 11:06:02 -03:00
luis 5322a3918a feat(garrison): make the monument trophy system work, and fix its wire 2026-08-14 17:08:19 -03:00
luis 975d5cdddb covenant: fix audit findings - tick guards, GM security, reset-rejoin gate, delete purge 2026-08-14 16:29:42 -03:00
luis 4a8d994836 char db 2026-08-14 16:08:51 -03:00
luis 95a3dc6462 covenant: build the Path of Ascension as what the data says it is (P6.3) 2026-08-14 12:36:35 -03:00
luis f3bf538d9c covenant: build the Abomination Factory as what the data says it is (P6.2) 2026-08-14 12:22:56 -03:00
luis 58d9888f71 covenant: real Queen's Conservatory catalysts (items, not Revendreth props) 2026-08-14 12:00:42 -03:00
luis 5c8a8871e4 feat(covenant): Queen's Conservatory engine (Night Fae unique sanctum feature, P6) 2026-08-14 11:52:37 -03:00
luis 934ed6fe99 soulbinds 2026-08-14 11:45:55 -03:00
luis 870607b1a2 covenant: real Callings lifecycle and a covenant-scoped anima layer (P4.4 + P4.5) 2026-08-13 23:38:12 -03:00
luis f1a850764f Big update 2026-08-13 03:39:45 -03:00
luis 0a465b642e Omnium Folio 2026-08-12 11:40:08 -03:00
luis 0216072edd prey 2026-08-12 10:18:11 -03:00
Céfiro_Caecias caf7d1eec0 Rename 2026_07_08_02_characters.sql to 2026_08_08_02_characters.sql 2026-08-08 10:55:04 -03:00
luis 0345cae344 fix crash and wq 2026-08-08 06:49:37 -03:00
luis 7f4f8de873 crash fix 2026-08-08 06:38:55 -03:00
luis 7f21655f2d typo 2026-08-08 06:18:42 -03:00
luis d38614e07d great-vault: dependency - per-run levels per activity row
Prerequisite for the World-row bridge, taken verbatim from the vault half of afd5a4a
(feature/p0-gates-and-defects, already merged into integration/all-systems; the rest of that commit
is unrelated RAF work). Neither feature/mythic-plus nor feature/great-vault ever received it, and
each vault slot's level is defined as the Nth-best run of the week, so the row must keep every run's
level rather than a single bestLevel.
2026-08-08 05:31:15 -03:00
luis c8ea90c08a mythic-plus: merge feature/great-vault (dependency: WeeklyRewardsMgr + the bound vault handler)
The Great Vault World-row bridge needs both halves and neither branch has both:
feature/mythic-plus owns WeeklyRewardChestThreshold.db2 (the DB2 the row ladder is read from) and
ChallengeModeMgr's vault services; feature/great-vault owns WeeklyRewardsMgr (the three-row
Dungeon/Raid/World model) and WeeklyRewardHandler.cpp, which is the handler an assembly actually
binds to CMSG_REQUEST_WEEKLY_REWARDS / CMSG_CLAIM_WEEKLY_REWARD.
2026-08-08 05:27:41 -03:00
luis c0c5851fc2 m+ rework part 1 2026-08-08 05:05:14 -03:00
luis 9ccfcd5218 feat(archaeology): persist active dig sites per character (Phase 1 sub-slice 2b) 2026-08-07 23:21:47 -03:00
luis 7900818433 gear upgrade system 2026-08-07 13:06:00 -03:00
luis 985454835b - Merge the three character_mythic_plus* tables (incl. the new timed /
keystoneResetTime columns) into the base characters schema so fresh
  installs need no updates.
- Implement the Mythic+ criteria modifiers (keystone level, completed in
  time, map challenge mode, display/milestone season, rating >=, run
  count >=) - unblocks KSM-style achievements and season gating.
2026-08-07 11:36:10 -03:00
luis 357884cfbb mythic plus system improvements 2026-08-07 10:18:39 -03:00
luis e73121ea04 typo 2026-08-05 12:14:54 -03:00
luis 801651bb23 shipments 2026-08-05 08:41:15 -03:00
luis 78048489c2 merge garr tables 2026-08-05 08:33:07 -03:00
Sefrenia 6eb90b79d1 Limpieza Julio 2026 2 2026-08-01 11:32:15 -03:00
Sefrenia 4761cc51c7 Limpieza Julio 2026 2026-08-01 11:06:54 -03:00
luis a858bb1402 garrions rework and packets 2026-07-31 09:18:19 -03:00
luis 093e6f82c6 Spell paladin Holy Ritual and garrisson ressources cache 2026-07-29 12:46:11 -03:00
luis a1c408cc2b Club finder full + misc fixes 2026-07-27 22:47:20 -03:00
luis ddc8b1c52f Full chromie time 2026-07-26 20:04:11 -03:00
luis 9b70bb4cab Core/Arenas: implement arena gameplay for solo player with bots
- player can now hire 1 (2v2) or 2 bots (3v3) gameplay in arenas.
- enemy team will have only bots
- the system should support also 2players vs 2 bots or 3 players vs 3 bots.
- not all arenas might be enabled. this is still WIP
- enemy team bots currently just wait at their spawn point - still WIP
2026-07-19 13:04:22 -03:00
luis 751f063936 feat(covenant): P3 - grant RenownRewards on covenant renown level-up
The covenant renown LEVEL is already a renown-reputation handled by TC's
ReputationMgr and synced to the client by the standard reputation packets,
so the only covenant-specific gap was granting the per-level rewards.

- Add the RenownRewards.db2 store (Meta 0x30AFBCF8, ParentIndex=CovenantID)
  and a DB2Manager (covenantId, level) -> rewards map (GetRenownRewards).
- Track the highest renown level whose rewards were granted, per covenant
  (Player::m_renownRewardsGranted), persisted to a new character_covenant_renown
  table and loaded at login, so each level's rewards are granted exactly once.
- Player::ReputationChanged now grants rewards for every renown level crossed
  when a covenant renown reputation increases; a login catch-up
  (UpdateAllRenownRewards, run in-world after SendInitialPacketsAfterAddToMap)
  grants anything earned before this feature existed. UpdateRenownRewards is
  guarded on IsInWorld() so nothing is granted mid-load.
- GrantRenownReward grants item / spell / title / mount via the existing
  Player + CollectionMgr APIs. The cosmetic-collection fields RenownRewards
  also carries (TransmogID/TransmogSetID/TransmogIllusionID, GarrFollowerID,
  QuestID) are documented as follow-ups rather than half-implemented.
2026-07-08 21:41:23 -03:00
luis 22f8b82dd7 db 2026-07-08 15:05:03 -03:00
luis 3a1ee8c00b feat(crafting-orders): P1 persistent storage for work orders 2026-07-06 23:16:00 -03:00
luis 93d3d7cafe new 2026-07-06 15:25:07 -03:00
luis 8680d8b2ca feat(covenant): P2 - soulbind conduit collection + socketing + spell application
Unblocks covenant P2 by building the conduit sub-system the soulbind
gameplay hangs off of (all garrison-talent opcodes were Handle_NULL).

Data (Phase A): add the SoulbindConduit.db2 store (Meta 0x2632E47D
already present) so conduits can be validated by type/covenant/spec.

Collection (Phase B): the conduit collection is server-authoritative -
Player now tracks owned conduits (conduitId -> RankIndex) and socketed
conduits (GarrTalent node -> conduitId + treeId), both persisted to new
character_soulbind_conduits / character_soulbind_conduit_sockets tables
loaded at login. CollectConduit() grants at the data-driven lowest
RankIndex defined for the conduit (never assumes 0; refuses if there is
no rank row). The "conduit add" GM command is the interim grant trigger;
auto-collection from conduit items needs the item-to-conduit link (TODO).

Socketing (Phase C): CMSG_GARRISON_SOCKET_TALENT now decodes to
{ u32 GarrTalentID, u32 count, count x (SoulbindConduitID, Rank) } - the
pair mirrors this protocol's GarrisonTalentSocketData. The handler routes
to Player::SocketConduit, which validates the conduit exists, is owned,
and its covenant matches, then persists and casts the conduit's
SoulbindConduitRank->SpellID aura. ApplyConduitSpells/RemoveConduitSpells
gate on the active soulbind's tree, re-apply on login (mirrors
_LoadGlyphAuras) and swap on soulbind switch.

Server-authoritative: the client-sent rank is ignored (server uses its
own collection). The socket wire's leading id / pair order carry a
NEEDS-CONFIRM (sniff) flag, but the handler fails closed - an unowned or
invalid id simply no-ops, so a misread can never corrupt state or apply a
wrong spell.
2026-07-06 15:16:59 -03:00
luis 283c56f934 feat(covenant): P1 - ActivateSoulbind + player covenant/soulbind state 2026-07-06 15:04:52 -03:00
luis 73013ddb10 Mythic+: Phase 18 - Great Vault claim flow (reward options + collect) 2026-07-05 11:50:41 -03:00
luis 86f2eb129d m+ phase 15 2026-07-04 03:30:25 -03:00
luis c68f9b6906 Mythic+: Phase 3 - death penalty, run scoring and best-run persistence 2026-07-03 21:29:27 -03:00
Sefrenia bc6d979a16 Limpieza Junio 2026 2026-07-01 09:46:56 -03:00
Céfiro_Caecias c86b6e58b2 Rename FSB_base_characters.sql to 2026_06_16_00_FSB_base_characters.sql 2026-06-25 11:30:58 -03:00