Fournit des fonctions permettant de soumettre et d'accéder à des stats, des succès et des classements.
Fonctions membres
Les fonctions membres d'
ISteamUserStats
sont appelées par le biais de la fonction d'accesseur global
SteamUserStats()
.
AttachLeaderboardUGC
SteamAPICall_t AttachLeaderboardUGC( SteamLeaderboard_t hSteamLeaderboard, UGCHandle_t hUGC );
Joint un élément de contenu généré par la communauté à l'entrée du compte actuel sur le tableau des scores.
Ce contenu pourrait être une rediffusion de l'utilisateur ou l'utilisatrice qui réussit à atteindre le score ou un fantôme avec lequel on peut faire la course. Le handle joint sera disponible lorsque l'entrée sera récupérée et peut être téléchargé par d'autres personnes via
GetDownloadedLeaderboardEntry, qui contient
LeaderboardEntry_t.m_hUGC
. Pour créer et télécharger un contenu généré par la communauté, consultez la documentation du Workshop Steam.
Une fois joint, le contenu sera disponible même si le fichier du Cloud sous-jacent est modifié ou supprimé par le compte.
Vous devez appeler
FindLeaderboard ou
FindOrCreateLeaderboard pour obtenir
SteamLeaderboard_t avant d'appeler cette fonction.
Éléments renvoyés : SteamAPICall_t à utiliser avec un résultat d'appel
LeaderboardUGCSet_t.
ClearAchievement
bool ClearAchievement( const char *pchName );
Nom | Type | Description |
pchName | const char * | Nom de l'API pour le succès à réinitialiser. |
Réinitialise l'état Déverrouillé d'un succès.
Cette fonction n'est principalement utilisée qu'à des fins de test.
Vous devez avoir appelé
RequestCurrentStats et obtenu un renvoi réussi de la fonction via son rappel avant de réaliser cet appel !
Cet appel ne modifie que la mémoire interne de Steam et est peu couteux. Pour envoyer le statut de déverrouillage vers le serveur et pour déclencher la notification de l'overlay Steam, vous devez appeler
StoreStats.
Éléments renvoyés : bool
Cette fonction renvoie
true en cas de succès, c'est-à-dire si les conditions suivantes sont remplies, et
false en cas d'échec.
- Le « nom de l'API » pour le succès spécifié existe dans l'onglet d'administration de l'application sur le site Web de Steamworks, et les changements ont été publiés.
- RequestCurrentStats est terminé et a renvoyé avec succès son rappel.
Consulter également : ResetAllStats,
GetAchievementAndUnlockTime,
GetAchievement,
SetAchievementDownloadLeaderboardEntries
SteamAPICall_t DownloadLeaderboardEntries( SteamLeaderboard_t hSteamLeaderboard, ELeaderboardDataRequest eLeaderboardDataRequest, int nRangeStart, int nRangeEnd );
Nom | Type | Description |
hSteamLeaderboard | SteamLeaderboard_t | Handle de classement obtenu avec FindLeaderboard ou FindOrCreateLeaderboard. |
eLeaderboardDataRequest | ELeaderboardDataRequest | Type de la demande de données à effectuer. |
nRangeStart | int | Index pour commencer à télécharger des entrées relatives à eLeaderboardDataRequest. |
nRangeEnd | int | Dernier index pour lequel il faut récupérer les entrées relatives à eLeaderboardDataRequest. |
Va chercher une série d'entrées de classement pour un classement spécifique.
Vous pouvez demander plus d'entrées que celles existantes, et ceci en renverra autant que celles qui existent.
Si vous voulez télécharger des entrées pour un ensemble arbitraire de comptes, comme par exemple toutes les personnes présentes sur un serveur, vous pouvez utiliser
DownloadLeaderboardEntriesForUsers qui dresse un tableau des SteamID.
Vous devez appeler
FindLeaderboard ou
FindOrCreateLeaderboard pour obtenir
SteamLeaderboard_t avant d'appeler cette fonction.
Éléments renvoyés : SteamAPICall_t à utiliser avec un résultat d'appel
LeaderboardScoresDownloaded_t.
Consulter également : GetDownloadedLeaderboardEntry,
UploadLeaderboardScoreDownloadLeaderboardEntriesForUsers
SteamAPICall_t DownloadLeaderboardEntriesForUsers( SteamLeaderboard_t hSteamLeaderboard, CSteamID *prgUsers, int cUsers );
Va chercher les entrées du classement pour un ensemble arbitraire de comptes sur un classement spécifié.
Un maximum de 100 comptes peut être téléchargé à la fois, avec seulement un appel en attente à la fois. Si un compte n'a pas d'entrée sur le classement spécifié, il ne sera pas inclus dans le résultat.
Si vous voulez télécharger des entrées en fonction du classement ou des contacts du compte actuel, alors vous devriez utiliser
DownloadLeaderboardEntries.
Vous devez appeler
FindLeaderboard ou
FindOrCreateLeaderboard pour obtenir
SteamLeaderboard_t avant d'appeler cette fonction.
Éléments renvoyés : SteamAPICall_t à utiliser avec un résultat d'appel
LeaderboardScoresDownloaded_t.
Renvoie
k_uAPICallInvalid qui indique une erreur si le nombre de comptes dépasse 100 ou si l'un des SteamID n'est pas valide.
Consultez également : GetDownloadedLeaderboardEntry,
UploadLeaderboardScoreFindLeaderboard
SteamAPICall_t FindLeaderboard( const char *pchLeaderboardName );
Nom | Type | Description |
pchLeaderboardName | const char * | Nom du classement à trouver. Ne doit pas être plus long que k_cchLeaderboardNameMax. |
Obtient un classement par nom.
Vous devez soit effectuer cet appel soit
FindOrCreateLeaderboard pour obtenir le handle du classement qui est valide pour la session de jeu pour chaque classement auquel vous souhaitez accéder avant d'appeler n'importe quelle autre fonction de classement.
Éléments renvoyés : SteamAPICall_t à utiliser avec un résultat d'appel
LeaderboardFindResult_t.
Consulter également : GetLeaderboardEntryCount,
DownloadLeaderboardEntries,
UploadLeaderboardScoreFindOrCreateLeaderboard
SteamAPICall_t FindOrCreateLeaderboard( const char *pchLeaderboardName, ELeaderboardSortMethod eLeaderboardSortMethod, ELeaderboardDisplayType eLeaderboardDisplayType );
Nom | Type | Description |
pchLeaderboardName | const char * | Nom du classement à trouver ou créer. Ne doit pas être plus long que k_cchLeaderboardNameMax. |
eLeaderboardSortMethod | ELeaderboardSortMethod | Ordre de tri du nouveau classement s'il est créé. |
eLeaderboardDisplayType | ELeaderboardDisplayType | Type d'affichage (utilisé par le site Web de la communauté Steam) du nouveau classement s'il est créé. |
Obtient un classement par nom, il va le créer si ce n'a pas déjà été fait.
Vous devez soit effectuer cet appel soit
FindLeaderboard pour obtenir le handle du classement qui est valide pour la session de jeu pour chaque classement auquel vous souhaitez accéder avant d'appeler n'importe quelle autre fonction de classement.
Les classements créés avec cette fonction ne s'afficheront pas automatiquement dans la communauté Steam. Vous devez définir manuellement le champ du nom de la communauté dans l'onglet « Application » du panneau d'administration sur le site Web de Steamworks. Ainsi, il est généralement recommandé de préférer la création de classement dans le panneau d'administration de l'application sur le site Web de Steamworks et d'utiliser
FindLeaderboard, à moins que vous ne vous attendiez à avoir une grande quantité de classements créés dynamiquement.
Ne passez jamais
k_ELeaderboardSortMethodNone pour
eLeaderboardSortMethod
ou
k_ELeaderboardDisplayTypeNone pour
eLeaderboardDisplayType
, car il s'agit d'un comportement non défini.
Éléments renvoyés : SteamAPICall_t à utiliser avec un résultat d'appel
LeaderboardFindResult_t.
Consulter également : GetLeaderboardEntryCount,
DownloadLeaderboardEntries,
UploadLeaderboardScoreGetAchievement
bool GetAchievement( const char *pchName, bool *pbAchieved );
Nom | Type | Description |
pchName | const char * | Nom de l'API pour le succès. |
pbAchieved | bool * | Renvoie l'état déverrouillé du succès. |
Obtient l'état déverrouillé du succès.
Pour les autres comptes,
GetUserAchievement est une fonction équivalente.
Éléments renvoyés : bool
Cette fonction renvoie
true en cas de succès, c'est-à-dire si les conditions suivantes sont remplies, et
false en cas d'échec.
- RequestCurrentStats est terminé et a renvoyé avec succès son rappel.
- Le « Nom d'API » du succès spécifié existe dans l'onglet « Application » du panneau d'administration sur le site Web de Steamworks et les changements ont été publiés.
Si la fonction est utilisée avec succès, alors l'état déverrouillé est renvoyé via le paramètre
pbAchieved
.
Consulter également : GetAchievementDisplayAttribute,
GetAchievementName,
GetAchievementIcon,
GetAchievementAndUnlockTime,
GetAchievementAchievedPercentGetAchievementAchievedPercent
bool GetAchievementAchievedPercent( const char *pchName, float *pflPercent );
Nom | Type | Description |
pchName | const char * | Nom de l'API pour le succès. |
pflPercent | float * | Variable pour renvoyer le pourcentage de personnes qui ont déverrouillé ce succès de 0 à 100. |
Renvoie le pourcentage de personnes qui ont déverrouillé le succès spécifié.
Vous devez avoir appelé
RequestGlobalAchievementPercentages et obtenu un renvoi réussi de la fonction via son rappel avant de réaliser cet appel.
Éléments renvoyés : bool
Renvoie
true en cas de réussite, et
false si
RequestGlobalAchievementPercentages n'a pas été appelé ou si le « Nom d'API » spécifié n'existe pas dans les pourcentages de succès.
Consulter également : GetMostAchievedAchievementInfo,
GetNextMostAchievedAchievementInfoGetAchievementAndUnlockTime
bool GetAchievementAndUnlockTime( const char *pchName, bool *pbAchieved, uint32 *punUnlockTime );
Nom | Type | Description |
pchName | const char * | Nom de l'API pour le succès. |
pbAchieved | bool * | Indique si l'utilisatrice ou l'utilisateur actuel a déverrouillé ou non le succès. |
punUnlockTime | uint32 * | Renvoie la date à laquelle le succès a été déverrouillé, si pbAchieved renvoie true. |
Obtient le statut du succès et la date à laquelle il a été déverrouillé le cas échéant.
Si la valeur renvoyée est true, mais que la date de déverrouillage est zéro, cela signifie qu'il a été déverrouillé avant que Steam ne commence à suivre les dates de déverrouillage des succès (décembre 2009). L'heure est au format « depuis l'époque Unix » (secondes écoulées depuis le 1ᵉʳ janvier 1970).
Pour les autres comptes,
GetUserAchievementAndUnlockTime est une fonction équivalente.
Éléments renvoyés : bool
Cette fonction renvoie
true en cas de succès, c'est-à-dire si les conditions suivantes sont remplies, et
false en cas d'échec.
- RequestCurrentStats est terminé et a renvoyé avec succès son rappel.
- Le « Nom de l'API » pour le succès spécifié existe dans l'onglet Admin. de l'application sur le site Web de Steamworks et les changements ont été publiés.
Si l'appel aboutit, l'état d'avancement et l'heure de déverrouillage sont fournis à l'aide des arguments
pbAchieved
et
punUnlockTime
.
Consulter également : GetAchievement,
GetAchievementDisplayAttribute,
GetAchievementName,
GetAchievementIconGetAchievementDisplayAttribute
const char * GetAchievementDisplayAttribute( const char *pchName, const char *pchKey );
Nom | Type | Description |
pchName | const char * | Nom de l'API pour le succès. |
pchKey | const char * | Clé pour laquelle obtenir la valeur. |
Obtient les attributs généraux pour un succès. Fournit actuellement : le nom, la description et l'état masqué.
Ceci obtient la valeur à partir d'un dictionnaire ou d'une carte de valeurs, et il est donc nécessaire d'entrer l'une des clés suivantes.
- "name" permet de récupérer le nom traduit du succès en encodage UTF8.
- "desc" permet de récupérer la description traduite du succès en encodage UTF8.
- "hidden" permet de récupérer l'état d'un succès si celui-ci est masqué. Renvoie « 0 » lorsqu'il n'est pas masqué, « 1 » lorsqu'il l'est.
Cette traduction est fournie en fonction de la langue du jeu, si elle est définie, sinon, la fonction vérifie si une traduction est disponible pour la langue de l'interface Steam du compte. Si cela échoue également, alors la langue par défaut est l'anglais.
Éléments renvoyés : const char *
En cas de succès, cette fonction renvoie une chaine de caractères si toutes les conditions suivantes sont remplies, sinon elle renvoie une chaine vide :
"".
- RequestCurrentStats est terminé et a renvoyé avec succès son rappel.
- Le succès spécifié existe dans Admin. de l'application sur le site Web de Steamworks, et les changements ont été publiés.
- La clé
pchKey
spécifiée est valide.
Consulter également : GetAchievement,
GetAchievementName,
GetAchievementIcon,
GetAchievementAndUnlockTimeGetAchievementIcon
int GetAchievementIcon( const char *pchName );
Nom | Type | Description |
pchName | const char * | Nom de l'API pour le succès. |
Obtient l'icône d'un succès.
Éléments renvoyés : int
Déclenche un rappel
UserAchievementIconFetched_t.
Cette image est renvoyée comme handle à utiliser avec
ISteamUtils::GetImageRGBA pour obtenir les données de l'image.
Un handle invalide de
0 sera renvoyé dans les conditions suivantes.
- RequestCurrentStats n'est pas terminé et n'a pas renvoyé avec succès son rappel.
- Le succès spécifié n'existe pas dans Admin. de l'application sur le site Web de Steamworks, ou les changements ont été publiés.
- Steam est encore en train d'aller chercher les données de l'image sur le serveur. Cela déclenchera un rappel UserAchievementIconFetched_t qui vous préviendra lorsque les données de l'image seront prêtes et vous fournira un nouveau handle. Si le
m_nIconHandle
du rappel est toujours sur 0, alors aucune image n'est définie pour le succès spécifié.
Consultez également : GetAchievement,
GetAchievementName,
GetAchievementAndUnlockTime,
GetAchievementAchievedPercent,
GetAchievementDisplayAttributeGetAchievementName
const char * GetAchievementName( uint32 iAchievement );
Nom | Type | Description |
iAchievement | uint32 | Index du succès. |
Obtient le « nom de l'API » pour l'index d'un succès entre 0 et
GetNumAchievements.
Cette fonction doit être utilisée avec
GetNumAchievements pour faire défiler la liste des succès.
En général, les jeux ne devraient pas avoir besoin de ces fonctions, car la liste des succès existants est compilée dans le jeu lui-même.
Éléments renvoyés : const char *
« Nom de l'API » pour le succès, renvoie une chaine de caractères vide si
iAchievement
n'est pas un index valide.
RequestCurrentStats doit avoir été appelé et doit avoir renvoyé avec succès son rappel. L'AppID actuel doit avoir des succès.
Exemplesint numAchievements = SteamUserStats()->GetNumAchievements();
for ( int i = 0; i < numAchievements; ++i )
{
const char *achName = SteamUserStats()->GetAchievementName( i );
if ( achName )
{
printf( "%s", achName );
}
}
GetDownloadedLeaderboardEntry
bool GetDownloadedLeaderboardEntry( SteamLeaderboardEntries_t hSteamLeaderboardEntries, int index, LeaderboardEntry_t *pLeaderboardEntry, int32 *pDetails, int cDetailsMax );
Nom | Type | Description |
hSteamLeaderboardEntries | SteamLeaderboardEntries_t | Handle d'entrée de classement obtenu avec le dernier résultat d'appel reçu LeaderboardScoresDownloaded_t. |
index | int | Index du classement à réceptionner, doit être compris entre 0 et LeaderboardScoresDownloaded_t.m_cEntryCount . |
pLeaderboardEntry | LeaderboardEntry_t * | Variable dans laquelle l'entrée va être renvoyée. |
pDetails | int32 * | Tableau préalloué dans lequel sont renvoyés les détails de cette entrée. |
cDetailsMax | int | Taille du tableau pDetails . |
Récupère les données pour une seule entrée de classement.
Vous devriez utiliser une boucle comprise entre 0 et
LeaderboardScoresDownloaded_t.m_cEntryCount
pour obtenir toutes les entrées téléchargées. Une fois que vous aurez accès à toutes les entrées, les données seront libérées et le handle
SteamLeaderboardEntries_t sera alors invalide.
Il est également possible de renvoyer les informations concernant cette entrée via
pDetails
. Si NULL, alors
cDetailsMax
DOIT être
0.
Éléments renvoyés : bool
Cette fonction renvoie
true en cas de succès, c'est-à-dire si les conditions suivantes sont remplies, et
false en cas d'échec.
-
hSteamLeaderboardEntries
doit être un handle valide du dernier résultat d'appel LeaderboardScoresDownloaded_t reçu.
-
index
doit être compris entre 0 et LeaderboardScoresDownloaded_t.m_cEntryCount
.
Si l'appel est effectué avec succès, alors l'entrée est renvoyée via le paramètre
pLeaderboardEntry
. Si
cDetailsMax
n'est pas défini sur 0 alors
pDetails
contiendra les informations de déverrouillage.
Consultez également : DownloadLeaderboardEntries,
UploadLeaderboardScoreExemplesvoid OnLeaderboardScoresDownloaded( LeaderboardScoresDownloaded_t *pCallback )
{
for ( int i = 0; i < pCallback->m_cEntryCount; i++ )
{
LeaderboardEntry_t leaderboardEntry;
int32 details[3]; // On sait que nous devons commencer par stocker cette quantité.
SteamUserStats()->GetDownloadedLeaderboardEntry( pCallback->m_hSteamLeaderboardEntries, i, &leaderboardEntry, details, 3 );
assert( leaderboardEntry.m_cDetails == 3 );
//...
}
}
GetGlobalStat
bool GetGlobalStat( const char *pchStatName, int64 *pData );
bool GetGlobalStat( const char *pchStatName, double *pData );
Nom | Type | Description |
pchStatName | const char * | Nom de l'API pour la statistique. Ne doit pas être plus long que k_cchStatNameMax. |
pData | int64 * / double * | Variable dans laquelle renvoyer la valeur de la statistique. |
Obtient les totaux généraux pour une stat globale.
Vous devez avoir appelé
RequestGlobalStats et obtenu un renvoi réussi de la fonction via son rappel avant de réaliser cet appel.
Éléments renvoyés : bool
Cette fonction renvoie
true en cas de succès, c'est-à-dire si les conditions suivantes sont remplies, et
false en cas d'échec.
- La statistique spécifiée existe dans l'onglet Admin. de l'appli sur le site Web de Steamworks et les changements ont été publiés.
- RequestGlobalStats est terminé et renvoyé avec succès son rappel.
- Le type correspond au type listé dans l'onglet d'administration de l'application sur le site Steamworks.
Consulter également : GetGlobalStatHistoryGetGlobalStatHistory
int32 GetGlobalStatHistory( const char *pchStatName, int64 *pData, uint32 cubData );
int32 GetGlobalStatHistory( const char *pchStatName, double *pData, uint32 cubData );
Nom | Type | Description |
pchStatName | const char * | Nom de l'API pour la statistique. Ne doit pas être plus long que k_cchStatNameMax. |
pData | double * | Tableau dans lequel sera renvoyé l'historique quotidien. |
cubData | uint32 | Taille totale en octets du tableau pData . |
Obtient les totaux généraux pour une stat globale.
pData contiendra les valeurs journalières, depuis aujourd'hui.
Une fois appelé, pData[0] sera défini sur la date d'aujourd'hui, pData[1] sur hier, pData[2] sur avant-hier, etc.
Vous devez avoir appelé
RequestGlobalStats et obtenu un renvoi réussi de la fonction via son rappel avant de réaliser cet appel.
Éléments renvoyés : int32Le nombre d'éléments renvoyés dans le tableau
pData
.
La valeur
0 indique un échec pour l'une des raisons suivantes :
- La statistique spécifiée n'existe pas dans Admin. de l'application sur le site Web de Steamworks, ou les changements ont été publiés.
- RequestGlobalStats n'a pas été appelé ou n'a pas renvoyé son rappel, avec au moins 1 jour d'historique.
- Le type ne correspond pas au type listé dans l'onglet Admin. de l'application du site de Steamworks.
- Il n'y a aucun historique disponible.
Consulter également : GetGlobalStatGetLeaderboardDisplayType
ELeaderboardDisplayType GetLeaderboardDisplayType( SteamLeaderboard_t hSteamLeaderboard );
Renvoie le type d'affichage d'un handle de classement.
Éléments renvoyés : ELeaderboardDisplayTypeLe type d'affichage du classement. Renvoie
k_ELeaderboardDisplayTypeNone si le handle de classement n'est pas valide.
Consultez également : GetLeaderboardName,
GetLeaderboardSortMethod,
GetLeaderboardEntryCountGetLeaderboardEntryCount
int GetLeaderboardEntryCount( SteamLeaderboard_t hSteamLeaderboard );
Renvoie le nombre total d'entrées dans un classement.
Cela est mis en cache en fonction du classement dès le premier appel vers
FindLeaderboard ou
FindOrCreateLeaderboard et est rafraichi après chaque appel réussi vers
DownloadLeaderboardEntries,
DownloadLeaderboardEntriesForUsers, et
UploadLeaderboardScore.
Éléments renvoyés : int
Nombre d'entrées dans le classement. Renvoie 0 si le handle du classement n'est pas valide.
Consultez également : GetLeaderboardName,
GetLeaderboardSortMethod,
GetLeaderboardDisplayTypeGetLeaderboardName
const char * GetLeaderboardName( SteamLeaderboard_t hSteamLeaderboard );
Renvoie le nom d'un handle de classement.
Éléments renvoyés : const char *
Nom du classement. Renvoie une chaine vide si le handle du classement n'est pas valide.
Consulter également : GetLeaderboardEntryCount,
GetLeaderboardSortMethod,
GetLeaderboardDisplayTypeGetLeaderboardSortMethod
ELeaderboardSortMethod GetLeaderboardSortMethod( SteamLeaderboard_t hSteamLeaderboard );
Renvoie l'ordre de tri d'un handle de classement.
Éléments renvoyés : ELeaderboardSortMethodMéthode de sélection du classement. Renvoie
k_ELeaderboardSortMethodNone si le handle de classement n'est pas valide.
Consulter également : GetLeaderboardName,
GetLeaderboardDisplayType,
GetLeaderboardEntryCountGetMostAchievedAchievementInfo
int GetMostAchievedAchievementInfo( char *pchName, uint32 unNameBufLen, float *pflPercent, bool *pbAchieved );
Nom | Type | Description |
pchName | char * | Tampon de chaine vers lequel renvoyer le « nom d'API » du succès. |
unNameBufLen | uint32 | Taille en octets de pchName qui doit être au moins aussi long que votre « nom d'API » de succès le plus long. |
pflPercent | float * | Variable pour renvoyer le pourcentage de personnes qui ont déverrouillé ce succès de 0 à 100. |
pbAchieved | bool * | Variable à renvoyer indiquant si le compte actuel a déverrouillé ou non ce succès. |
Obtient les informations du succès le plus obtenu pour le jeu.
Vous devez avoir appelé
RequestGlobalAchievementPercentages et obtenu un renvoi réussi de la fonction via son rappel avant de réaliser cet appel.
Éléments renvoyés : int
Renvoie
-1 si
RequestGlobalAchievementPercentages n'a pas été appelé ou qu'il n'existe aucun pourcentage mondial de succès pour cet AppID.
Si l'appel est effectué avec succès, un itérateur est renvoyé. Celui-ci devrait être utilisé avec
GetNextMostAchievedAchievementInfo.
Consulter également : RequestCurrentStats,
RequestGlobalAchievementPercentages,
GetNextMostAchievedAchievementInfo,
GetAchievementAchievedPercentExempleconst int ACH_NAME_MAX_LENGTH = 64;
char[ACH_NAME_MAX_LENGTH] achName;
float achPercent;
float achUnlocked;
int i = SteamUserStats()->GetMostAchievedAchievementInfo( achName, ACH_NAME_MAX_LENGTH, achPercent, achUnlocked );
while ( i != -1 )
{
printf( "AchievementInfo - name: %s, percent: %f, unlocked: %d", achName, achPercent, achUnlocked );
// Ajoutez ou mettez à jour cette information dans l'objet de succès local, ou rendez-la visible de l'utilisateur ou l'utilisatrice.
i = SteamUserStats()->GetNextMostAchievedAchievementInfo( i, achName, ACH_NAME_MAX_LENGTH, achPercent, achUnlocked );
}
GetNextMostAchievedAchievementInfo
int GetNextMostAchievedAchievementInfo( int iIteratorPrevious, char *pchName, uint32 unNameBufLen, float *pflPercent, bool *pbAchieved );
Nom | Type | Description |
iIteratorPrevious | int | Itérateur renvoyé par l'appel précédent vers cette fonction ou vers GetMostAchievedAchievementInfo. |
pchName | char * | Tampon de chaine vers lequel renvoyer le « nom d'API » du succès. |
unNameBufLen | uint32 | Taille en octets de pchName qui doit être au moins aussi long que votre « nom d'API » de succès le plus long. |
pflPercent | float * | Variable pour renvoyer le pourcentage de personnes qui ont déverrouillé ce succès de 0 à 100. |
pbAchieved | bool * | Variable à renvoyer indiquant si le compte actuel a déverrouillé ou non ce succès. |
Obtient les informations du second succès le plus obtenu pour le jeu.
Vous devez avoir appelé
RequestGlobalAchievementPercentages et obtenu un renvoi réussi de la fonction via son rappel avant de réaliser cet appel.
Éléments renvoyés : int
Renvoie
-1 si
RequestGlobalAchievementPercentages n'a pas été appelé ou qu'il n'existe aucun pourcentage mondial de succès pour cet AppID.
Si l'appel a réussi, il renvoie un itérateur qui doit être utilisé avec les appels subséquents de cette fonction.
Exempleconst int ACH_NAME_MAX_LENGTH = 64;
char[ACH_NAME_MAX_LENGTH] achName;
float achPercent;
float achUnlocked;
int i = SteamUserStats()->GetMostAchievedAchievementInfo( achName, ACH_NAME_MAX_LENGTH, achPercent, achUnlocked );
while ( i != -1 )
{
printf( "AchievementInfo - name: %s, percent: %f, unlocked: %d", achName, achPercent, achUnlocked );
// Ajoutez ou mettez à jour cette information dans l'objet de succès local, ou rendez-la visible de l'utilisateur ou l'utilisatrice.
i = SteamUserStats()->GetNextMostAchievedAchievementInfo( i, achName, ACH_NAME_MAX_LENGTH, achPercent, achUnlocked );
}
GetNumAchievements
uint32 GetNumAchievements();
Obtient le nombre de succès définis dans le panneau de l'Admin. de l'application du site Web de Steamworks.
Utilisé pour les itérations effectuées sur les succès avec
GetAchievementName.
En général, les jeux ne devraient pas avoir besoin de ces fonctions, car la liste des succès existants est compilée dans le jeu lui-même.
Éléments renvoyés : uint32Nombre de succès. Renvoie
0 si
RequestCurrentStats n'a pas été appelé et n'a pas renvoyé avec succès son rappel ou si l'AppID actuel n'a aucun succès.
Consulter également : RequestCurrentStats,
GetAchievementNameExempleint numAchievements = SteamUserStats()->GetNumAchievements();
for ( int i = 0; i < numAchievements; ++i )
{
const char *achName = SteamUserStats()->GetAchievementName( i );
if ( achName )
{
printf( "%s", achName );
}
}
GetNumberOfCurrentPlayers
SteamAPICall_t GetNumberOfCurrentPlayers();
Récupère de manière asynchrone le nombre total de joueurs et de joueuses qui jouent en ce moment au jeu actuel. (à la fois en ligne et hors ligne).
Éléments renvoyés : SteamAPICall_t est à utiliser avec un résultat d'appel
NumberOfCurrentPlayers_t.
GetStat
bool GetStat( const char *pchName, int32 *pData );
bool GetStat( const char *pchName, float *pData );
Nom | Type | Description |
pchName | const char * | Nom de l'API pour la statistique. Ne doit pas être plus long que k_cchStatNameMax. |
pData | int32 * / float * | Variable dans laquelle renvoyer la valeur de la statistique. |
Obtient la valeur actuelle de la statistique pour le compte actuel.
Vous devez avoir appelé
RequestCurrentStats et obtenu un renvoi réussi de la fonction via son rappel avant de réaliser cet appel.
Pour recevoir les statistiques d'autres comptes, utilisez
GetUserStat.
Éléments renvoyés : bool
Cette fonction renvoie
true en cas de succès, c'est-à-dire si les conditions suivantes sont remplies, et
false en cas d'échec.
- La statistique spécifiée existe dans l'onglet Admin. de l'appli sur le site Web de Steamworks et les changements ont été publiés.
- RequestCurrentStats est terminé et a renvoyé avec succès son rappel.
- Le type passé via cette fonction doit correspondre au type listé dans l'onglet Admin. de l'application du site de Steamworks.
Consultez également : RequestCurrentStats,
SetStat,
UpdateAvgRateStat,
StoreStats,
ResetAllStatsGetTrophySpaceRequiredBeforeInstall
uint64 GetTrophySpaceRequiredBeforeInstall();
OBSOLÈTE.
Éléments renvoyés : uint64GetUserAchievement
bool GetUserAchievement( CSteamID steamIDUser, const char *pchName, bool *pbAchieved );
Nom | Type | Description |
steamIDUser | CSteamID | SteamID du compte pour lequel le succès doit être obtenu. |
pchName | const char * | Nom de l'API pour le succès. |
pbAchieved | bool * | Renvoie l'état déverrouillé du succès. |
Obtient l'état déverrouillé du succès.
La fonction équivalente pour l'utilisatrice ou l'utilisateur local est
GetAchievement, et celle pour les serveurs de jeu est
ISteamGameServerStats::GetUserAchievement.
Éléments renvoyés : bool
Cette fonction renvoie
true en cas de succès, c'est-à-dire si les conditions suivantes sont remplies, et
false en cas d'échec.
- RequestUserStats est terminé et a renvoyé avec succès son rappel.
- Le « Nom de l'API » du succès spécifié existe dans l'onglet Admin. de l'application sur le site Web de Steamworks et les changements ont été publiés.
Si la fonction est utilisée avec succès, alors l'état déverrouillé est renvoyé via le paramètre
pbAchieved
.
Consultez également : RequestUserStats,
GetUserStat,
GetUserAchievementAndUnlockTimeGetUserAchievementAndUnlockTime
bool GetUserAchievementAndUnlockTime( CSteamID steamIDUser, const char *pchName, bool *pbAchieved, uint32 *punUnlockTime );
Nom | Type | Description |
steamIDUser | CSteamID | SteamID du compte pour lequel le succès doit être obtenu. |
pchName | const char * | Nom de l'API pour le succès. |
pbAchieved | bool * | Indique si l'utilisatrice ou l'utilisateur actuel a déverrouillé ou non le succès. |
punUnlockTime | uint32 * | Renvoie la date à laquelle le succès a été déverrouillé, si pbAchieved renvoie true. |
Obtient le statut du succès et la date à laquelle il a été déverrouillé le cas échéant.
Si la valeur renvoyée est true, mais que la date de déverrouillage est zéro, cela signifie qu'il a été déverrouillé avant que Steam ne commence à suivre les dates de déverrouillage des succès (décembre 2009). L'heure est au format « depuis l'époque Unix » (secondes écoulées depuis le 1ᵉʳ janvier 1970).
La fonction équivalente pour l'utilisatrice ou l'utilisateur local est
GetAchievementAndUnlockTime.
Éléments renvoyés : bool
Cette fonction renvoie
true en cas de succès, c'est-à-dire si les conditions suivantes sont remplies, et
false en cas d'échec.
- RequestUserStats est terminé et a renvoyé avec succès son rappel.
- Le « Nom de l'API » du succès spécifié existe dans l'onglet Admin. de l'application sur le site Web de Steamworks et les changements ont été publiés.
Si l'appel aboutit, l'état d'avancement et l'heure de déverrouillage sont fournis à l'aide des arguments
pbAchieved
et
punUnlockTime
.
Consulter également : RequestUserStats,
GetUserAchievement,
GetUserStatGetUserStat
bool GetUserStat( CSteamID steamIDUser, const char *pchName, int32 *pData );
bool GetUserStat( CSteamID steamIDUser, const char *pchName, float *pData );
Nom | Type | Description |
steamIDUser | CSteamID | SteamID du compte pour lequel la statistique doit être obtenue. |
pchName | const char * | Nom de l'API pour la statistique. Ne doit pas être plus long que k_cchStatNameMax. |
pData | int32 * / float * | Variable dans laquelle renvoyer la valeur de la statistique. |
Obtient la valeur actuelle de la statistique pour le compte spécifié.
Vous devez avoir appelé
RequestUserStats et obtenu un renvoi réussi de la fonction via son rappel avant de réaliser cet appel.
La fonction équivalente pour l'utilisatrice ou l'utilisateur local est
GetStat, et celle pour les serveurs de jeu est
ISteamGameServerStats::GetUserStat.
Éléments renvoyés : bool
Cette fonction renvoie
true en cas de succès, c'est-à-dire si les conditions suivantes sont remplies, et
false en cas d'échec.
- La statistique spécifiée existe dans l'onglet Admin. de l'appli sur le site Web de Steamworks et les changements ont été publiés.
- RequestUserStats est terminé et a renvoyé avec succès son rappel.
- Le type ne correspond pas à celui listé dans l'onglet d'administration de l'application sur le site Steamworks.
Consultez également : GetUserAchievement,
GetUserAchievementAndUnlockTimeGetUserStatsData
bool GetUserStatsData( void *pvData, uint32 cubData, uint32 *pcubWritten );
Nom | Type | Description |
pvData | void * | |
cubData | uint32 | |
pcubWritten | uint32 * | |
OBSOLÈTE.
Éléments renvoyés : bool
IndicateAchievementProgress
bool IndicateAchievementProgress( const char *pchName, uint32 nCurProgress, uint32 nMaxProgress );
Nom | Type | Description |
pchName | const char * | Nom de l'API pour le succès. |
nCurProgress | uint32 | Progression actuelle. |
nMaxProgress | uint32 | La progression requise pour déverrouiller le succès. |
Fait apparaitre une fenêtre contextuelle qui indique à la personne la progression actuelle d'un succès.
Appeler cette fonction ne va PAS définir la progression ou déverrouiller le succès. Le jeu doit le faire manuellement en appelant
SetStat !
La notification ressemble à ceci :
Éléments renvoyés : bool
Déclenche un rappel
UserStatsStored_t.
Déclenche un rappel
UserAchievementStored_t.
Cette fonction renvoie
true lorsqu'elle est effectuée avec succès et si toutes les conditions sont remplies. Sinon, elle renvoie
false.
- RequestCurrentStats est terminé et a renvoyé avec succès son rappel.
- Le succès spécifié existe sur le panneau d'administration de l'application sur le site Web de Steamworks, et les changements ont été publiés.
- Le succès spécifié n'est pas déjà déverrouillé.
-
nCurProgress
est inférieur à nMaxProgress
.
Consulter également : RequestCurrentStats,
SetAchievement,
SetStat,
StoreStats,
ISteamUtils::SetOverlayNotificationPosition,
ISteamUtils::SetOverlayNotificationInsetInstallPS3Trophies
bool InstallPS3Trophies();
OBSOLÈTE.
Éléments renvoyés : bool
RequestCurrentStats
bool RequestCurrentStats();
Demande les statistiques et les succès actuels du compte de manière asynchrone depuis le serveur.
Cet appel doit être envoyé en premier pour obtenir l'état initial des statistiques et des succès.
Ce n'est qu'après avoir reçu le rappel que vous pouvez commencer à appeler d'autres fonctions de statistiques et de succès pour le compte actuel.
Pour les autres comptes,
RequestUserStats est une fonction équivalente.
Éléments renvoyés : bool
Déclenche un rappel
UserStatsReceived_t.
Ne renvoie
false que si personne n'est connecté. Sinon, renvoie
true.
Consultez également : GetStat,
SetStat,
SetAchievement,
StoreStatsRequestGlobalAchievementPercentages
SteamAPICall_t RequestGlobalAchievementPercentages();
Va chercher de manière asynchrone les données pour le pourcentage de joueurs et de joueuses qui ont reçu chaque succès pour le jeu actuel à l'échelle mondiale.
Vous devez avoir appelé
RequestCurrentStats et obtenu un renvoi réussi de la fonction via son rappel avant de réaliser cet appel !
Éléments renvoyés : SteamAPICall_t est à utiliser avec un résultat d'appel
GlobalAchievementPercentagesReady_t.
Consulter également : GetMostAchievedAchievementInfo,
GetNextMostAchievedAchievementInfo,
GetAchievementAchievedPercentRequestGlobalStats
SteamAPICall_t RequestGlobalStats( int nHistoryDays );
Nom | Type | Description |
nHistoryDays | int | Nombre de jours d'historique quotidien qu'il faut récupérer en plus des totaux généraux. La limite est de 60. |
Va chercher de manière asynchrone les données de statistiques mondiales, disponibles pour celles marquées comme globales dans le panneau d'administration de l'application du site de Steamworks.
Vous devez avoir appelé
RequestCurrentStats et obtenu un renvoi réussi de la fonction via son rappel avant de réaliser cet appel.
Éléments renvoyés : SteamAPICall_t est à utiliser avec un résultat d'appel
GlobalStatsReceived_t.
Consulter également : GetGlobalStat,
GetGlobalStatHistoryRequestUserStats
SteamAPICall_t RequestUserStats( CSteamID steamIDUser );
Nom | Type | Description |
steamIDUser | CSteamID | SteamID du compte pour lequel la requête de statistiques est faite. |
Télécharge depuis le serveur les succès et les statistiques pour le compte spécifié de manière asynchrone.
Ces stats ne sont pas mises à jour automatiquement ; vous devrez appeler cette fonction à nouveau pour actualiser les données qui peuvent avoir changé.
Pour éviter d'utiliser trop de mémoire, un cache des entrées les moins récemment utilisées (least recently used cache, ou LRU en anglais) est conservé et les statistiques d'autres comptes seront parfois déchargées. Lorsque cela se produit, un rappel
UserStatsUnloaded_t est envoyé. Après avoir reçu ce rappel, les statistiques du compte ne seront plus disponibles tant que cette fonction n'aura pas été rappelée.
La fonction équivalente pour l'utilisatrice ou l'utilisateur local est
RequestCurrentStats, et celle pour les serveurs de jeu est
ISteamGameServerStats::RequestUserStats.
Éléments renvoyés : SteamAPICall_t est à utiliser avec un résultat d'appel
UserStatsReceived_t.
Consulter également : GetUserAchievement,
GetUserAchievementAndUnlockTime,
GetUserStatResetAllStats
bool ResetAllStats( bool bAchievementsToo );
Nom | Type | Description |
bAchievementsToo | bool | Réinitialiser les succès du compte ? |
Réinitialise les stats du compte actuel et, de manière facultative, les succès.
Appelle automatiquement
StoreStats pour imposer les changements sur le serveur. Ne devrait généralement être utilisé qu'à des fins de test lors du développement. Assurez-vous de synchroniser vos statistiques avec les nouvelles valeurs par défaut fournies par Steam après avoir effectué cet appel en appelant
RequestCurrentStats.
Éléments renvoyés : bool
true indique une exécution réussie si
RequestCurrentStats a bien été appelé et a renvoyé son rappel avec succès. Sinon renvoie
false.
SetAchievement
bool SetAchievement( const char *pchName );
Nom | Type | Description |
pchName | const char * | Nom de l'API pour le succès à déverrouiller. |
Déverrouille un succès.
Vous devez avoir appelé
RequestCurrentStats et obtenu un renvoi réussi de la fonction via son rappel avant de réaliser cet appel !
Vous pouvez déverrouiller un succès plusieurs fois. Ainsi, vous n'avez pas besoin de vous soucier de remporter uniquement les succès qui n'ont pas déjà été obtenus. Cet appel ne modifie que la mémoire interne de Steam et est peu couteux. Pour envoyer le statut de déverrouillage vers le serveur et pour déclencher la notification de l'overlay Steam, vous devez appeler
StoreStats.
Éléments renvoyés : bool
Cette fonction renvoie
true en cas de succès, c'est-à-dire si les conditions suivantes sont remplies, et
false en cas d'échec.
- Le « Nom de l'API » pour le succès spécifié existe dans l'onglet d'administration de l'application sur le site Web de Steamworks, et les changements ont été publiés.
- RequestCurrentStats est terminé et renvoyé avec succès son rappel.
Consulter également : RequestCurrentStats,
StoreStats,
ResetAllStats,
GetAchievementAndUnlockTime,
GetAchievementSetStat
bool SetStat( const char *pchName, int32 nData );
bool SetStat( const char *pchName, float fData );
Nom | Type | Description |
pchName | const char * | « Nom de l'API » pour la statistique. Ne doit pas être plus long que k_cchStatNameMax. |
nData | int32 / float | Nouvelle valeur de la statistique. Cette valeur doit être absolue et ne pourra pas être incrémentée ou décrémentée pour vous. |
Définit ou met à jour la valeur d'une statistique pour le compte actuel.
Vous devez avoir appelé
RequestCurrentStats et obtenu un renvoi réussi de la fonction via son rappel avant de réaliser cet appel !
Cet appel ne modifie que la mémoire interne de Steam et est peu couteux. Cela permet à Steam d'imposer les changements même si le jeu plante ou se ferme de manière impromptue.
Pour livrer les statistiques au serveur, vous devez appeler
StoreStats.
Si ce paramètre renvoie false alors que tout semble correct, alors vérifiez bien dans le panneau Admin. de l'application sur le site Web de Steamworks que vos changements sont publiés.
Éléments renvoyés : bool
Cette fonction renvoie
true en cas de succès, c'est-à-dire si les conditions suivantes sont remplies, et
false en cas d'échec.
- La statistique spécifiée existe dans l'onglet Admin. de l'appli sur le site Web de Steamworks et les changements ont été publiés.
- RequestCurrentStats est terminé et a renvoyé avec succès son rappel.
- Le type passé via cette fonction doit correspondre au type listé dans l'onglet Admin. de l'application du site de Steamworks.
Consulter également : GetStat,
UpdateAvgRateStat,
ResetAllStatsSetUserStatsData
bool SetUserStatsData( const void *pvData, uint32 cubData );
Nom | Type | Description |
pvData | const void * | |
cubData | uint32 | |
OBSOLÈTE.
Éléments renvoyés : bool
StoreStats
bool StoreStats();
Envoyer les données des statistiques et des succès modifiées au serveur pour les y enregistrer de façon permanente.
En cas d'échec, rien n'est envoyé au serveur. Il est recommandé de continuer à essayer jusqu'à ce que la fonction soit exécutée avec succès.
La fréquence de cet appel peut être limitée. La fréquence de l'appel devrait être de l'ordre des minutes plutôt que des secondes. Il n'est pas recommandé d'effectuer cet appel durant des changements d'états majeurs comme la fin d'une manche, un changement de carte ou le départ d'un utilisateur du serveur. L'appel est requis pour afficher la boite de dialogue de notification de déverrouillage du succès. Ainsi, si vous avez appelé
SetAchievement, alors il est recommandé d'effectuer cet appel rapidement après celui-ci.
Si vous avez sauvegardé localement des statistiques ou des succès grâce à cette fonction, mais ne les avez pas encore chargés sur le serveur, cette fonction sera automatiquement utilisée lors de la clôture du processus de votre application.
Vous pouvez consulter des informations de débogage supplémentaires sur le fichier
%steam_install%\logs\stats_log.txt
.
Éléments renvoyés : bool
Déclenche un rappel
UserStatsStored_t.
Déclenche un rappel
UserAchievementStored_t.
Cette fonction renvoie
true lorsqu'elle est effectuée avec succès et si toutes les conditions sont remplies. Sinon, elle renvoie
false.
- RequestCurrentStats est terminé et a renvoyé avec succès son rappel.
- Le jeu actuel possède des statistiques qui lui sont associées dans l'interface Steamworks Partner, et ces stats sont publiées.
Si l'appel a réussi, vous recevrez un rappel
UserStatsStored_t.
Si
m_eResult
a un résultat de
k_EResultInvalidParam, alors l'une des statistiques envoyées a été rejetée, soit parce qu'elle ne respectait pas les contraintes, soit parce qu'elle était obsolète. Dans ce cas, le serveur renvoie des valeurs mises à jour et les statistiques devraient être mises à jour localement afin d'assurer la synchronisation. Il est inutile de rappeler RequestCurrentStats dans ce cas précis.
Si un ou plusieurs succès ont été débloqués, cela déclenchera également un rappel
UserAchievementStored_t.
Consultez également : SetStat,
SetAchievementUpdateAvgRateStat
bool UpdateAvgRateStat( const char *pchName, float flCountThisSession, double dSessionLength );
Nom | Type | Description |
pchName | const char * | « Nom de l'API » pour la statistique. Ne doit pas être plus long que k_cchStatNameMax. |
flCountThisSession | float | Accumulation de valeurs depuis la dernière utilisation de cette fonction. |
dSessionLength | double | Temps écoulé depuis la dernière utilisation de cette fonction, renseigné en secondes. |
Met à jour une statistique AVGRATE (moyenne) en utilisant de nouvelles valeurs.
Vous devez avoir appelé
RequestCurrentStats et obtenu un renvoi réussi de la fonction via son rappel avant de réaliser cet appel !
Cet appel ne modifie que la mémoire interne de Steam et est peu couteux. Cela permet à Steam d'imposer les changements même si le jeu plante ou se ferme de manière impromptue.
Pour livrer les statistiques au serveur vous devez appeler
StoreStats.
Si ce paramètre renvoie false alors que tout semble correct, alors vérifiez bien dans le panneau Admin. de l'application sur le site Web de Steamworks que vos changements sont publiés.
Éléments renvoyés : bool
Cette fonction renvoie
true en cas de succès, c'est-à-dire si les conditions suivantes sont remplies, et
false en cas d'échec.
- La statistique spécifiée existe dans l'onglet d'administration de l'application sur le site Web de Steamworks et les changements ont été publiés.
- RequestCurrentStats est terminé et renvoyé avec succès son rappel.
- Le type doit être réglé sur AVGRATE dans l'interface du compte partenaire Steamworks.
UploadLeaderboardScore
SteamAPICall_t UploadLeaderboardScore( SteamLeaderboard_t hSteamLeaderboard, ELeaderboardUploadScoreMethod eLeaderboardUploadScoreMethod, int32 nScore, const int32 *pScoreDetails, int cScoreDetailsCount );
Nom | Type | Description |
hSteamLeaderboard | SteamLeaderboard_t | Handle de classement obtenu avec FindLeaderboard ou FindOrCreateLeaderboard. |
eLeaderboardUploadScoreMethod | ELeaderboardUploadScoreMethod | Voulez-vous forcer le score à changer ou conserver le score précédent si celui-ci était meilleur ? |
nScore | int32 | Score à mettre en ligne. |
pScoreDetails | const int32 * | Facultatif : tableau contenant les détails entourant le déverrouillage de ce score. |
cScoreDetailsCount | int | Nombre d'éléments dans pScoreDetails . Ne doit pas dépasser k_cLeaderboardDetailsMax. |
Télécharge le score d'un compte vers un classement spécifié.
Les détails sont des informations facultatives définies par le jeu qui indiquent comment la personne a obtenu ce score. Par exemple, s'il s'agit d'un classement de style course, basé sur les meilleurs temps, vous pourrez stocker l'horodatage lorsque la personne a atteint chaque point de contrôle. Si vous avez des objets à récupérer le long du parcours, vous pouvez utiliser des champs de bits comme opérateurs booléens afin de stocker les objets que la personne a récupérés sur sa route.
La mise en ligne des scores sur Steam est limité à 10 par tranches de 10 minutes et vous ne pouvez avoir qu'un appel sortant vers cette fonction à la fois.
Éléments renvoyés : SteamAPICall_t est à utiliser avec un résultat d'appel
LeaderboardScoreUploaded_t.
Consultez également : DownloadLeaderboardEntries,
AttachLeaderboardUGCRappels
Voici les rappels qui peuvent être activés en appelant
SteamAPI_RunCallbacks. La plupart seront activés directement en réponse aux fonctions membres de
ISteamUserStats
.
GlobalAchievementPercentagesReady_t
Appelé lorsque les pourcentages de succès mondiaux ont été reçus depuis le serveur.
Nom | Type | Description |
m_nGameID | uint64 | ID du jeu auquel sont destinés les pourcentages de succès. |
m_eResult | EResult | Résultat de la requête. Renvoie : k_EResultOK pour indiquer qu'il a réussi. k_EResultInvalidState lorsque les statistiques n'ont pas encore été chargées. Dans ce cas, appelez RequestCurrentStats. k_EResultFail si l'appel distant échoue ou qu'il n'existe aucun pourcentage mondial de succès pour cet AppID. |
Fonctions associées : RequestGlobalAchievementPercentagesGlobalStatsReceived_t
Appelé lorsque les stats mondiales ont été reçues depuis le serveur.
Nom | Type | Description |
m_nGameID | uint64 | ID du jeu pour lequel ces stats mondiales sont destinées. |
m_eResult | EResult | Résultat de la requête. Éléments renvoyés :
|
Fonctions associées : RequestGlobalStatsLeaderboardFindResult_t
Résultat lorsqu'un classement est trouvé.
Nom | Type | Description |
m_hSteamLeaderboard | SteamLeaderboard_t | Handle vers le classement qui était recherché. 0 si aucun classement n'a été trouvé. |
m_bLeaderboardFound | uint8 | Le classement a-t-il été trouvé ? 1 s'il l'a été, sinon 0. |
Fonctions associées : FindOrCreateLeaderboard,
FindLeaderboardLeaderboardScoresDownloaded_t
Appelé lorsque les scores d'un classement ont été téléchargés et sont prêts à être collectés.
Après l'appel, vous devez utiliser
GetDownloadedLeaderboardEntry pour obtenir les informations relatives à chaque entrée téléchargée.
Fonctions associées : DownloadLeaderboardEntries,
DownloadLeaderboardEntriesForUsersLeaderboardScoreUploaded_t
Résultat indiquant qu'un score du classement a été téléchargé.
Nom | Type | Description |
m_bSuccess | uint8 | L'appel a-t-il abouti ? Renvoie 1 si l'appel a réussi, 0 s'il a échoué. Le volume d'informations envoyé dépasse k_cLeaderboardDetailsMax. Le classement est défini sur « Fiable » sur la page d'administration de l'application sur le site de Steamworks. Il n'acceptera que les scores envoyés depuis l'API Steam Web. |
m_hSteamLeaderboard | SteamLeaderboard_t | Handle du classement sur lequel ce score a été mis en ligne. |
m_nScore | int32 | Score qui a tenté d'être établi. |
m_bScoreChanged | uint8 | true si le score dans le classement a changé. Sinon, renvoie false si le score existant était meilleur. |
m_nGlobalRankNew | int | Nouveau rang mondial du compte sur ce classement. |
m_nGlobalRankPrevious | int | Rang précédent du compte sur ce classement. 0 si celui-ci n'avait pas d'entrée existante dans le classement. |
Fonctions associées : UploadLeaderboardScoreLeaderboardUGCSet_t
Résultat indiquant que du contenu généré par la communauté a été joint à l'une des entrées du classement du compte actuel.
Nom | Type | Description |
m_eResult | EResult | Résultat de l'opération. Valeurs possibles :
|
m_hSteamLeaderboard | SteamLeaderboard_t | Handle vers le classement auquel l'UGC a été joint. |
Fonctions associées : AttachLeaderboardUGCNumberOfCurrentPlayers_t
Obtient le nombre actuel de joueurs et de joueuses pour l'AppID actuel.
Nom | Type | Description |
m_bSuccess | uint8 | L'appel a-t-il abouti ? Renvoie 1 s'il l'a été. Sinon, renvoie 0 en cas d'échec. |
m_cPlayers | int32 | Nombre de personnes actuellement en jeu. |
Fonctions associées : GetNumberOfCurrentPlayersPS3TrophiesInstalled_t
Appelé lorsque des trophées PS3 sont disponibles.
Nom | Type | Description |
m_nGameID | uint64 | Jeu pour lequel ces stats sont destinées. |
m_eResult | EResult | Résultat de l'opération. |
m_ulRequiredDiskSpace | uint64 | Si m_eResult est k_EResultDiskFull, cela contiendra alors l'espace nécessaire pour installer les trophées. |
UserAchievementIconFetched_t
Résultat d'une icône de succès qui a été récupéré.
Nom | Type | Description |
m_nGameID | CGameID | ID du jeu pour lequel ce succès est destiné. |
m_rgchAchievementName | char[k_cchStatNameMax] | Nom du succès auquel ce rappel est destiné. |
m_bAchieved | bool | Renvoie des informations sur la version de l'icône indiquant si le succès a été obtenu (true) ou non (false). |
m_nIconHandle | int | Handle de l'image, peut être utilisé avec ISteamUtils::GetImageRGBA pour obtenir les données de cette image. 0 : aucune image n'est définie pour le succès. |
Fonctions associées : GetAchievementIconUserAchievementStored_t
Résultat d'une requête de stockage des succès sur le serveur ou un appel d'indication de progression. Si
m_nCurProgress
et
m_nMaxProgress
sont à zéro, cela signifie que le succès a été entièrement débloqué.
Nom | Type | Description |
m_nGameID | uint64 | ID du jeu auquel ce succès est destiné. |
m_bGroupAchievement | bool | Inutilisé. |
m_rgchAchievementName | char[k_cchStatNameMax] | Nom du succès. |
m_nCurProgress | uint32 | Progression actuelle vers l'obtention du succès. |
m_nMaxProgress | uint32 | Quantité totale de progression requise pour déverrouiller le succès. |
Fonctions associées : StoreStats,
IndicateAchievementProgressUserStatsReceived_t
Appelé lorsque les dernières statistiques et succès pour un compte spécifique (incluant le compte utilisateur local) ont été reçus depuis le serveur.
Nom | Type | Description |
m_nGameID | uint64 | ID du jeu pour lequel ces stats sont destinées. |
m_eResult | EResult | Indique si l'appel a été effectué avec succès ou non. Sera définie comme k_EResultFail si le compte ne dispose pas de statistiques. |
m_steamIDUser | CSteamID | Compte pour lequel les statistiques ont été récupérées. |
Fonctions associées : RequestCurrentStats,
RequestUserStatsUserStatsStored_t
Résultat d'une requête visant à enregistrer les statistiques du compte.
Nom | Type | Description |
m_nGameID | uint64 | ID du jeu pour lequel ces stats sont destinées. |
m_eResult | EResult | Indique si l'appel a été effectué avec succès ou non. |
Fonctions associées : StoreStats,
IndicateAchievementProgressUserStatsUnloaded_t
Rappel indiquant que les statistiques d'un compte ont été retirées.
Appelez
RequestUserStats de nouveau avant d'accéder aux statistiques de ce compte.
Nom | Type | Description |
m_steamIDUser | CSteamID | Compte pour lequel les statistiques ont été retirées. |
Structures
Voici les structures que les fonctions de ISteamUserStats peuvent renvoyer et/ou avec lesquelles elles peuvent interagir.
LeaderboardEntry_t
Entrée unique d'un classement, renvoyée par
GetDownloadedLeaderboardEntry.
Énumérations
Voici les énumérations destinées à être utilisées avec ISteamUserStats.
ELeaderboardDataRequest
Type de requête de données, utilisé lors du téléchargement d'entrées de classement avec
DownloadLeaderboardEntries.
Nom | Valeur | Description |
k_ELeaderboardDataRequestGlobal | 0 | Utilisé pour demander une plage séquentielle d'entrées du classement par rang de classement. Les paramètres de début et de fin contrôlent la plage demandée. Par exemple, vous pouvez afficher les 10 scores les plus hauts sur un classement dans votre jeu en définissant le début sur 1 et la fin sur 10. |
k_ELeaderboardDataRequestGlobalAroundUser | 1 | Sert à récupérer les entrées du classement relatives à l'entrée d'un compte. Le paramètre de début est le nombre d'entrées à récupérer avant l'entrée du compte actuel, et le paramètre de fin est le nombre d'entrées après l'entrée du compte actuel. L'entrée du compte actuel est toujours incluse. Par exemple, si le compte actuel est n° 5 au classement, définir le début à -2 et la fin à 2 renverra 5 entrées : du rang n° 3 au rang n° 7. S'il n'y a pas suffisamment d'entrées dans le classement avant ou après l'entrée du compte, Steam va ajuster la plage pour essayer de renvoyer le nombre d'entrées requis. Par exemple, si le compte est n° 1 au classement et que le début est défini sur -2 et la fin sur 2, Steam va renvoyer les 5 premières entrées du classement. |
k_ELeaderboardDataRequestFriends | 2 | Sert à récupérer toutes les entrées du classement pour les contacts et le compte actuel. Les paramètres de début et de fin sont ignorés. |
k_ELeaderboardDataRequestUsers | 3 | Destiné à un usage interne, ne pas utiliser avec DownloadLeaderboardEntries ! Cela risque d'entrainer un comportement inattendu. |
ELeaderboardDisplayType
Le type d'affichage utilisé par le site Web de la communauté Steam pour savoir comment formater les scores du classement à afficher. Vous pouvez définir le type d'affichage lorsque vous créez un classement avec
FindOrCreateLeaderboard ou au sein de l'interface partenaire de Steamworks. Vous pouvez obtenir le type d'affichage pour un classement donné avec
GetLeaderboardDisplayType.
Nom | Valeur | Description |
k_ELeaderboardDisplayTypeNone | 0 | Ceci n'est utilisé que lorsqu'un classement n'est pas valide. Vous ne devriez jamais définir ce paramètre par vous-même. |
k_ELeaderboardDisplayTypeNumeric | 1 | Le score est une simple valeur numérique. |
k_ELeaderboardDisplayTypeTimeSeconds | 2 | Le score représente un temps, en secondes. |
k_ELeaderboardDisplayTypeTimeMilliSeconds | 3 | Le score représente un temps, en millisecondes. |
ELeaderboardSortMethod
La méthode de tri utilisée pour définir si un score plus élevé ou plus bas est meilleur. Vous pouvez définir la méthode de tri lorsque vous créez un classement avec
FindOrCreateLeaderboard ou sur la page d'administration de l'application sur le site Steamworks. Vous pouvez obtenir la méthode de tri d'un classement donné avec
GetLeaderboardSortMethod.
Nom | Valeur | Description |
k_ELeaderboardSortMethodNone | 0 | N'est utilisé que lorsqu'un classement n'est pas valide. Vous ne devriez jamais définir ce paramètre par vous-même. |
k_ELeaderboardSortMethodAscending | 1 | Le meilleur score est le chiffre le plus bas. |
k_ELeaderboardSortMethodDescending | 2 | Le meilleur score est le chiffre le plus haut. |
ELeaderboardUploadScoreMethod
Nom | Valeur | Description |
k_ELeaderboardUploadScoreMethodNone | 0 | |
k_ELeaderboardUploadScoreMethodKeepBest | 1 | Le classement va conserver le meilleur score du compte. |
k_ELeaderboardUploadScoreMethodForceUpdate | 2 | Le classement va toujours remplacer le score par celui spécifié. |
Typedefs
Voici les typedefs destinés à être utilisés avec ISteamUserStats.
Constantes
Voici les constantes destinées à être utilisées avec ISteamUserStats.
Nom | Type | Valeur | Description |
k_cchLeaderboardNameMax | int | 128 | Nombre maximum d'octets pour un nom de classement (encodage UTF-8). |
k_cchStatNameMax | int | 128 | Nombre maximum d'octets pour les noms de statistiques et de succès (encodage UTF-8). |
k_cLeaderboardDetailsMax | int | 64 | Nombre maximum de détails que vous pouvez stocker pour une seule entrée de classement. |
STEAMUSERSTATS_INTERFACE_VERSION | const char * | "STEAMUSERSTATS_INTERFACE_VERSION011" | |