====== API ====== La clef API est disponible dans la fenêtre "Options" du personnage. Elle est constituée d'une chaîne de 40 caractères hexadécimaux. Cette clef permet de se connecter au jeu, et doit donc rester secrète. Une fois connecté au jeu pour un perso donné, si vous voulez accéder aux fonctions API pour un autre perso vous devez changer de perso ou vous déconnecter via l'interface du jeu. Le système de connexion du flux API ne tente de vous connecter que si vous êtes déconnecté. ====== Les Fonctions API ====== La seule fonction disponible à ce jour est la fonction de visualisation : getinfos.php On y accède à l'adresse http://www.starshine-online.com/getinfos.php?login=[login]&key=[clef_api]¶metres_de_tri Ou plus simplement http://www.starshine-online.com/getinfos.php?parametres_de_tri si vous êtes déjà connecté au jeu. Les paramètres permettant de trier : * cache_moi : Cache mon perso (si le paramètre est présent) * cache_autre_perso : Cache les autres persos (si le paramètre est présent) * cache_pnj : Cache les PNJs (si le paramètre est présent) * cache_monstre : Cache les monstres (si le paramètre est présent) * cache_batiment_en_construction : Cache les bâtiments en construction (drapeaux, bâtiments, murs, armes de siège) (si le paramètre est présent) * cache_batiment : Cache les bâtiments construits (bâtiments, murs, armes de siège) (si le paramètre est présent) * xsl : Définit l'url d'une feuille XSL qui sera attachée au fichier XML (xsl=URL), aucune feuille XSL par défaut La structure du fichier XML avec une balise de chaque et le nom des attributs : * **** est la racine du document XML et contient des informations générales sur la zone de visualisation de la carte. Les cases visibles vérifient 'radius' ou 'building_radius'. * radius : Distance de Tchebychev visible autour la case du personnage. * building_radius : Distance euclidienne visible autour de la case du personnage. Bonus de vision le plus grand fournit par un des bâtiments sur la case du personnage, par exemple un bâtiment de type 'tour'. * timezone : Fuseau horaire utilisé par PHP pour toutes les fonctions date/heure. Utile pour utiliser les timestamps donnés par le document XML. [[http://fr.php.net/manual/fr/timezones.php|Liste des Fuseaux Horaires Supportés]] * **** représente une case de la carte du jeu. * x : Abscisse de la case. * y : Ordonnée de la case. * decor : Identifiant numérique utilisé dans le fichier [[https://github.com/StarshineOnline/Starshine-Online/blob/master/css/texture.css|css/texture.css]] du jeu pour définir l'image de la case. * royaume : Identifiant numérique du royaume d'appartenance de la case. [[#royaumes|Détails sur les royaumes]] * type : 0=rien, 1=case_de_ville, 2=?, 3=point_exceptionnel, à partir de 4 ça représente le calque utilisé par-dessus le décor (voir la table 'map_type_calque' dans la BDD). * type_terrain : Identifiant textuel utilisé par le jeu pour définir le terrain de la case. [[#types de terrain|Détails sur les types de terrain]] * **** représente un personnage joueur du jeu. * nom : Nom du personnage. * race : Race du personnage sous la même forme que le champ 'race' des royaumes. [[#royaumes|Détails sur les royaumes]] * classe : Classe du personnage. (Uniquement si on a le droit de voir sa classe.) * level : Niveau du personnage. (Uniquement si on a le droit de voir son niveau.) * exp : Expérience du personnage. (Uniquement si on a le droit de voir son niveau.) * honneur : Honneur du personnage. (Uniquement si on a le droit de voir ses stats.) * reputation : Réputation. (... stats) * frag : Nombre de personnages tués. (... stats) * mort : Nombre de fois où le personnage est mort. (... stats) * crime : Nombre de points de crime. (... stats) * melee : Mêlée. (... stats) * distance : Tir à distance. (... stats) * esquive : Esquive. (... stats) * blocage : Blocage. (... stats) * dressage : Dressage. (... stats) * artisanat : [[starshine:artisanat|Artisanat]]. (... stats) * survie : Survie. (... stats) * incantation : Incantation. (... stats) * sort_vie : Magie de la vie. (... stats) * sort_element : Magie élémentaire. (... stats) * sort_mort : Nécromancie. (... stats) * image : Identifiant d'image utilisé pour afficher le personnage dans le jeu. (Varie en fonction du personnage qui regarde) * est_mort : Définit si le personnage est mort ou non. Peut prendre la valeur 'true' ou 'false'. * **** représente un personnage non joueur du jeu. * nom : Nom du PNJ. * image : Identifiant d'image utilisé pour afficher le PNJ dans le jeu. * **** représente un bâtiment, une arme de siège ou un mur construit. * type : Différents types de bâtiments à l'heure actuelle : 'arme_de_siege', 'mur', 'mine', 'bourg', 'fort', 'tour'. [[#bâtiments|Détails sur les bâtiments]] * nom : Nom du bâtiment * royaume : Identifiant numérique du royaume du bâtiment. [[#royaumes|Détails sur les royaumes]] * hp : Points de vie actuels du bâtiment. * hp_max : Points de vie maximum du bâtiment. * image : Identifiant d'image utilisé pour afficher le bâtiment dans le jeu. * **** représente un drapeau, un bâtiment, une arme de siège ou un mur en cours de construction. * type : Différents types de bâtiments en construction à l'heure actuelle : 'drapeau', 'arme_de_siege', 'mur', 'mine', 'bourg', 'fort', 'tour'. [[#bâtiments|Détails sur les bâtiments]] * nom : Nom de la construction. * royaume : Identifiant numérique du royaume de la construction. [[#royaumes|Détails sur les royaumes]] * hp : Points de vie actuels de la construction. * hp_max : Points de vie maximum de la construction. * debut_placement : Timestamp du début de la construction. * fin_placement : Timestamp de la fin de la construction. * image : Identifiant d'image utilisé pour afficher la construction dans le jeu. * **** représente un monstre du jeu. * nom : Nom du monstre. * lib : Identifiant utilisé pour je ne sais pas encore quoi. FIXME ====== Royaumes ====== Tableau des royaumes ^ Id ^ Race ^ Nom ^ | 0 | | Neutre | | 1 | barbare | Royaume barbare | | 2 | elfebois | Loch'jaden | | 3 | troll | Dorsh'iva | | 4 | scavenger | Zandalyr | | 6 | orc | Ouldang | | 7 | nain | Scytä | | 8 | mortvivant | Voilebrisé | | 9 | humainnoir | Empire Vörsh | | 10 | humain | Lordaeris | | 11 | elfehaut | Kiel'loran | | 12 | vampire | Ereth drannor | Remarques : * Le royaume d'identifiant 0 (royaume Neutre) n'est pas vraiment un royaume. * Le royaume d'identifiant 5 n'existe pas. * Pour mettre à jour le tableau, voir la table 'royaume' dans la BDD. ====== Types de terrain ====== Tableau des types de terrain ^ Id ^ Tentative d'interprétation ^ | plaine | Plaine | | foret | Forêt | | desert | Désert | | glace | Glace | | eau | Eau | | montagne | Montagne | | marais | Marais | | route | Route | | objet | Bâtiment | | terre_maudite | Terre Maudite | | donjon | Donjon | | mur_donjon | Mur de Donjon | | mer | Zone inondée | | taverne_donjon | Repère des renégats | | donjon_aqua_level_1 | Donjon Aqua Level 1 | Remarques : * La colonne "Tentative d'interprétation" essaye de donner un sens à l'identifiant textuel mais tout n'est pas certain surtout vers la fin. :D FIXME * Pour mettre à jour le tableau, voir le [[https://github.com/StarshineOnline/Starshine-Online/blob/master/fonction/base.inc.php|fichier fonction/base.inc.php --> fonction type_terrain()]]. ====== Bâtiments ====== Tableau des bâtiments ^ Nom ^ Type ^ | Baliste | arme_de_siege | | Bélier d'entrainement | arme_de_siege | | Bélier | arme_de_siege | | Bourg | bourg | | Bourgade | bourg | | Carrière de sable | mine | | Carrière de sable II | mine | | Carrière de sable III | mine | | Catapulte | arme_de_siege | | drapeau | drapeau | | Etendard | drapeau | | Extracteur | mine | | Extracteur II | mine | | Extracteur III | mine | | Ferme | mine | | Ferme II | mine | | Ferme III | mine | | Fort | fort | | Forteresse | fort | | Fortin | fort | | Grand drapeau | drapeau | | Grand étendard | drapeau | | Grande Muraille | mur | | Meule | mine | | Meule II | mine | | Meule III | mine | | Mine | mine | | Mine II | mine | | Mine III | mine | | Mur | mur | | Muraille | mur | | Palissade | mur | | Péage | mine | | Péage II | mine | | Péage III | mine | | Petit bourg | bourg | | Petit Drapeau | drapeau | | Poste avancé | fort | | Puits | mine | | Puits a essence | mine | | Puits a essence II | mine | | Puits a essence III | mine | | Puits II | mine | | Puits III | mine | | Scierie | mine | | Scierie II | mine | | Scierie III | mine | | Tour d archers | tour | | Tour de garde | tour | | Tour de guet | tour | | Tour de mages | tour | | Trébuchet | arme_de_siege | Remarques : * Les drapeaux ne peuvent être que des bâtiments en construction car une fois la construction terminée ils disparaissent en modifiant le royaume d'appartenance de la case sur laquelle ils se trouvaient. * Pour mettre à jour le tableau, voir la table 'batiment' dans la BDD.