J'ai toujours adoré le jeu vidéo Age of Empires et plus particulièrement le deuxième opus et son extension The Conqueror. Bien que sorti en 1999, j'y joue encore quelques fois. Un développeur a même créé une API retournant diverses informations liées au jeu !
Tout logiquement nommée Age of Empires 2 API, ce projet open source et hébergé sur Heroku vous permet d'obtenir tout un tas de données du célèbre jeu vidéo.
Développée en Python avec notamment Flask, l'API met à disposition plusieurs éléments dont les civilisations, technologies, unités et structures.
La documentation vous permet de consulter toutes les routes disponibles ainsi que de les tester directement.
Par exemple, pour lister les civilisations :
https://age-of-empires-2-api.herokuapp.com/api/v1/civilizations
{
"civilizations": [
{
"id": 1,
"name": "Aztecs",
"expansion": "The Conquerors",
"army_type": "Infantry and Monk",
"unique_unit": [
"https://age-of-empires-2-api.herokuapp.com/api/v1/unit/jaguar_warrior"
],
"unique_tech": [
"https://age-of-empires-2-api.herokuapp.com/api/v1/technology/garland_wars"
],
"team_bonus": "Relics generate +33% gold",
"civilization_bonus": [
"Villagers carry +5",
"Military units created 15% faster",
"+5 Monk hit points for each Monastery technology",
"Loom free"
]
},
{
"id": 2,
"name": "Britons",
"expansion": "Age of Kings",
"army_type": "Foot Archer",
"unique_unit": [
"https://age-of-empires-2-api.herokuapp.com/api/v1/unit/longbowman"
],
"unique_tech": [
"https://age-of-empires-2-api.herokuapp.com/api/v1/technology/yeomen"
],
"team_bonus": "Archery Ranges work 20% faster",
"civilization_bonus": [
"Town Centers cost -50% wood upon reaching the Castle Age",
"Foot archers (excluding Skirmishers) have +1 range in Castle Age and +1 in Imperial Age (for +2 total)",
"Shepherds work 25% faster"
]
},
{
"id": 3,
"name": "Bizantines",
"expansion": "Age of Kings",
"army_type": "Defensive",
"unique_unit": [
"https://age-of-empires-2-api.herokuapp.com/api/v1/unit/cataphract"
],
"unique_tech": [
"https://age-of-empires-2-api.herokuapp.com/api/v1/technology/logistica"
],
"team_bonus": "Monks +50% heal speed",
"civilization_bonus": [
"Buildings (except gates) have +10% HP in Dark Age / +20% HP in Feudal Age / +30% in Castle Age / +40% in Imperial Age",
"Spearman skirmisher and camel lines cost 25% less",
"Fire Ships attack 20% faster",
"Imperial Age costs -33%",
"Town Watch is free"
]
},
...
Pour les technologies :
https://age-of-empires-2-api.herokuapp.com/api/v1/technologies
{
"technologies": [
{
"id": 1,
"name": "Crossbowman",
"description": "Upgrade to Crossbowman",
"expansion": "Age of Kings",
"age": "Castle",
"develops_in": "https://age-of-empires-2-api.herokuapp.com/api/v1/structure/archery_range",
"cost": {
"Food": 125,
"Gold": 75
},
"build_time": 35,
"applies_to": [
"https://age-of-empires-2-api.herokuapp.com/api/v1/unit/archer"
]
},
{
"id": 2,
"name": "Thumb Ring",
"description": "Faster reload time (10-20%) and 100% accuracy",
"expansion": "Age of Kings",
"age": "Castle",
"develops_in": "https://age-of-empires-2-api.herokuapp.com/api/v1/structure/archery_range",
"cost": {
"Food": 300,
"Wood": 250
},
"build_time": 45,
"applies_to": [
"https://age-of-empires-2-api.herokuapp.com/api/v1/unit/archer",
"https://age-of-empires-2-api.herokuapp.com/api/v1/unit/cavalry_archer"
]
},
{
"id": 3,
"name": "Arbalest",
"description": "Upgrade to Arbalest",
"expansion": "Age of Kings",
"age": "Imperial",
"develops_in": "https://age-of-empires-2-api.herokuapp.com/api/v1/structure/archery_range",
"cost": {
"Food": 350,
"Gold": 300
},
"build_time": 50,
"applies_to": [
"https://age-of-empires-2-api.herokuapp.com/api/v1/unit/crossbowman"
]
},
...