Cette application Node.js (TypeScript) est un emballage API Express.js pour l'API Ubisoft Rainbow Six®: Siege, utilisé pour récupérer et organiser des statistiques pour jusqu'à 50 joueurs par demande.
Ce projet est basé sur l'API Gamesense, développé par Jarren Morris et Caleb Marquart. Il a été simplifié de faciliter la récupération des statistiques R6 pour les développeurs à petite échelle.
Cette application a été développée à l'aide du langage de programmation TypeScript. Cette application peut s'exécuter sur un système avec NPM, Node.js et TypeScript installé.
Assurez-vous que tous les packages de nœuds nécessaires sont installés selon package.json
:
NPM CI
Vous devez modifier le fichier config.json
en fonction de vos besoins.
Mettez à jour la propriété "current_season"
(par exemple. "Y9S2"
).
Afin d'accéder aux statistiques R6 pour tout lecteur, vous devez être connecté à un compte Ubisoft avec 2FA désactivé. Vous pouvez même créer un compte Ubisoft "Burner" - il ne faut pas être votre personne personnel.
Ajoutez "email"
et "password"
de votre compte dans le fichier de configuration.
Par défaut, le serveur express s'exécute sur localhost:3000
. Vous pouvez modifier ce port pour répondre à vos besoins.
Si vous utilisez AWS EC2 pour héberger cette application, vous devrez peut-être utiliser un port dans la gamme 8000
S.
Sans gestionnaire de processus installé, vous pouvez exécuter une seule instance de cette application:
NPM Run Start
Évitez de démarrer l'application plus de 3 fois par heure car il se connecte à votre compte Ubisoft deux fois par démarrage et peut finir par retourner Too Many Requests
.
Get /r6/profiles/:platform/:username
Paramètre | Description | Valeurs valides |
---|---|---|
:platform | La plate-forme sur laquelle se trouve le profil du joueur. | id , pc , psn , xbox |
:username | Le nom d'utilisateur ou le profilid pour le profil du lecteur. | - |
{
"code": 200,
"profiles": {
"54822057-4dba-41e2-98b4-42bbe4a9fc4b": {
"currentSeason": {
"ranked": {
"abandons": 0,
"championNumber": 0,
"deaths": 325,
"kdRatio": "1.04",
"kills": 337,
"losses": 35,
"maxRank": "emerald iv",
"maxRankPoints": 3645,
"nextRank": "emerald iii",
"nextRankByMaxRank": "emerald iii",
"nextRankRankPoints": 3700,
"previousRank": "emerald v",
"rank": "emerald iv",
"rankPointProgress": 0,
"rankPoints": 3600,
"winPercent": "52.70%",
"wins": 35
}
},
"level": 254,
"lifetime": {
"overall": {
"aces": 38,
"assists": 4651,
"clutches": 239,
"deaths": 16826,
"headshots": 5368,
"kdRatio": "0.96",
"kills": 16218,
"killTrades": 462,
"losses": 2488,
"minutesPlayed": 85439,
"revives": 1031,
"teamKills": 457,
"winPercent": "52.51%",
"wins": 2751
},
"casual": {},
"ranked": {},
"unranked": {}
},
"modified": 1714838665,
"operators": {
"overall": {
"attackers": {
"maverick": {
"aces": 0,
"clutches": 0,
"deaths": 1,
"kdRatio": "0.00",
"kills": 0,
"losses": 1,
"minutesPlayed": 3,
"operator": "maverick",
"winPercent": "0.00%",
"wins": 0
}
},
"defenders": {
"mira": {
"aces": 0,
"clutches": 0,
"deaths": 1,
"kdRatio": "0.00",
"kills": 0,
"losses": 1,
"minutesPlayed": 5,
"operator": "mira",
"winPercent": "50.00%",
"wins": 1
}
}
},
"casual": {},
"ranked": {},
"unranked": {}
},
"platform": "psn",
"profileId": "54822057-4dba-41e2-98b4-42bbe4a9fc4b",
"userId": "7d688a85-9d59-460e-864c-6c43d54f50d7",
"username": "BobbyJoe123"
}
}
}
Développeur: Jarren Morris (@swiftcoda), étudiant en génie logiciel
Développeur: Caleb Marquart (@CalebMarQuart), étudiant en génie logiciel informatique
Contributeur: Pedro Calado Moura (@feijoes)
Vous voulez contribuer à ce projet? Vous avez pris une erreur ou vous voulez contribuer à la documentation?
Créez un problème ou faites une demande de traction avec une description détaillée de vos modifications proposées.
R6-API est autorisé en vertu de la licence du MIT.
Ce projet n'est pas affilié à Ubisoft Entertainment. Tom Clancy's, Rainbow Six, l'icône du soldat, Ubisoft et le logo Ubisoft sont des marques d'Ubisoft Entertainment.