v0.2.0
What's new
Altogether
v0.2.0 (2026-09-11)
Full Changelog Previous Releases
- 0.2.0 : Alertes en bulle, historique complet, import des allies recents
- CHANGELOG : la première version publiée est la 0.2.0
Le tag v0.1.0 précède les alertes en bulle, l'historique complet et l'import
des alliés récents : publier son numéro sous le contenu actuel aurait été
faux. Il reste dans l'historique, marqué comme build interne.
Co-Authored-By: Claude Opus 5 noreply@anthropic.com - Libellés d'évènements lisibles, et dates d'interaction honnêtes
- « ally », « grouped », « pvp » s'affichaient bruts dans l'historique de la
fiche : ces types viennent du code, pas du langage courant. Une seule table
de libellés coloriés vit maintenant dans le journal et sert aux deux vues. - Un allié récent affichait le temps écoulé depuis son import dans la base
(« 11 min ») au lieu de la date de l'interaction que Blizzard a conservée.
Co-Authored-By: Claude Opus 5 noreply@anthropic.com
- « ally », « grouped », « pvp » s'affichaient bruts dans l'historique de la
- Documenter l'import des alliés récents
C'est ce qui répond au principal défaut de l'addon — une base vide le
premier jour — donc ça méritait sa place dans les trois documents.
Co-Authored-By: Claude Opus 5 noreply@anthropic.com - Récupérer l'historique d'interactions que Blizzard a conservé
interactionData.interactions contient, pour chaque allié récent, la liste
datée de ce qu'on a fait ensemble : { timestamp, type, description } —
« Did Arena Together », « Whispered ». C'est la mémoire d'avant l'addon.- La plus ancienne interaction devient la circonstance de la rencontre, avec
sa vraie date. Un champwhats'ajoute àwherepour les circonstances
sans lieu, et l'affichage retombe dessus partout. - Chaque interaction devient une ligne d'historique, datée de quand elle a
réellement eu lieu ; DB:Log accepte désormais un horodatage. Un marqueur
par personne évite de réimporter deux fois la même. - La faction vient du raceID, le statut en ligne et la zone de stateData.
Co-Authored-By: Claude Opus 5 noreply@anthropic.com
- La plus ancienne interaction devient la circonstance de la rencontre, avec
- Alliés récents : exploiter la structure réelle
La sonde a donné la forme exacte : characterData porte fullName, guid, level,
realmName, classID et raceID ; stateData porte isOnline et currentLocation.- La faction est déduite du raceID via C_CreatureInfo.GetFactionInfo, ce que
Blizzard ne fournit pas directement. - Le statut en ligne et la zone sont repris : on sait donc qui, parmi les gens
croisés sans jamais les ajouter, est connecté en ce moment et où — une
information qu'aucune autre API ne donne pour un non-ami. - Le scan rafraîchit cette liste à chaque passage et inscrit ces personnes
parmi les vues, sinon il les déclarerait hors ligne juste après. - La sonde descend jusqu'au niveau 5, pour voir le détail des interactions.
Co-Authored-By: Claude Opus 5 noreply@anthropic.com
- La faction est déduite du raceID via C_CreatureInfo.GetFactionInfo, ce que
- Alliés récents : lire l'arbre, pas seulement sa racine
Une entrée est un arbre { interactionData, characterData, stateData } : mon
extracteur ne regardait que le premier niveau et ne trouvait donc rien, d'où
le « 0 recent allies read » sur trois entrées bien présentes.- Descente récursive dans l'arbre, en ramassant le premier champ reconnu pour
chaque information, et le GUID à sa forme « Player- ». - Normalisation de ce qui peut arriver sous plusieurs formes : classe en
identifiant numérique ou nom localisé, faction en 0/1, date d'interaction. - /alt dump allies affiche désormais l'arbre complet des trois premières
entrées, sous-tables comprises.
Co-Authored-By: Claude Opus 5 noreply@anthropic.com
- Descente récursive dans l'arbre, en ramassant le premier champ reconnu pour
- Import des « Alliés récents » de Blizzard dans l'onglet Croisés
La sonde a trouvé C_RecentAllies : le serveur garde la liste des joueurs avec
qui on vient de jouer, toutes factions et tous royaumes confondus. C'est la
seule source capable de parler de gens croisés avant l'installation.- modules/recentallies.lua : import au login, avec quelques tentatives le
temps que le serveur réponde, puis /alt allies pour forcer. - Lecture volontairement défensive : l'API n'est pas documentée, aucun nom de
champ n'est supposé, le GUID est reconnu à sa forme et GetPlayerInfoByGUID
fournit nom, royaume et classe. Si Blizzard change quoi que ce soit,
l'import se tait au lieu de casser. - Ces personnes apparaissent dans « Croisés » et ne sont jamais élaguées.
- /alt dump allies affiche maintenant le contenu réel des entrées.
Confirmé au passage : le chuchotement ne traverse pas les factions.
Co-Authored-By: Claude Opus 5 noreply@anthropic.com
- modules/recentallies.lua : import au login, avec quelques tentatives le
- Faction adverse : renvoyer vers « Alliés récents », pas vers un chuchotement
Le chuchotement traverse les royaumes, mais pas les factions — ou au mieux
c'est incertain. Proposer « demande-lui son BattleTag » à quelqu'un qu'on ne
peut pas joindre était un conseil creux.- Faction adverse : le bouton devient « Alliés récents... » et ouvre la
fenêtre Amis de Blizzard, dont cet onglet envoie une demande Battle.net
sans avoir besoin du BattleTag, cross-faction et cross-royaume. - Même faction mais royaume non connecté : chuchotement préparé, puisque là
il passe réellement. - Les infobulles disent laquelle des deux limites s'applique.
Co-Authored-By: Claude Opus 5 noreply@anthropic.com
- Faction adverse : le bouton devient « Alliés récents... » et ouvre la
- Ne plus proposer un ajout d'ami que le serveur refusera
Un ami de personnage est forcément de la même faction et du même groupe de
royaumes connectés. Le bouton envoyait quand même la requête pour un pug de
la faction adverse, et le serveur répondait « Joueur introuvable ».- Le bouton vérifie la faction et interroge GetAutoCompleteRealms() pour les
royaumes connectés avant de proposer quoi que ce soit. - Quand c'est impossible, il devient « Demander son BattleTag » et prépare un
chuchotement — qui, lui, traverse les royaumes. Le message est déposé dans
la zone de saisie, jamais envoyé tout seul, et cite le lieu de la rencontre. - L'infobulle explique la limite et signale l'onglet « Alliés récents » de
Blizzard, qui sait envoyer une demande Battle.net sans BattleTag.
Co-Authored-By: Claude Opus 5 noreply@anthropic.com
- Le bouton vérifie la faction et interroge GetAutoCompleteRealms() pour les
This mod has no additional files