Kepler. Documentation · Scripts 325 fonctions disponibles actuellement English

Les fonctions, à la suite

Chaque fonction avec sa signature, ce qu'elle rend et un appel, puis les constantes. Rien d'autre : le pourquoi, les pièges et les coûts en requêtes sont dans les pages du guide, auxquelles chaque titre renvoie. La recherche du navigateur trouve ici n'importe quel nom.

Sortie et stockage

Print

Écrit une ligne. Les arguments sont collés avec un espace.

Print(...)
// rend : rien

Print("cible", coord, "butin", butin)      // cible [P:1:64:6] butin 75

print

Le même, sous son autre nom.

print(...)
// rend : rien

Printf

Écrit une ligne formatée, à la façon de fmt.Printf.

Printf(format, ...)
// rend : rien

Printf("%d planetes, %d lunes", np, nl)

LogDebug

Le détail qui n'intéresse que vous, un jour de mise au point.

LogDebug(...)
// niveau : Info

LogDebugf

Le détail qui n'intéresse que vous, un jour de mise au point.

LogDebugf(format, ...)
// niveau : Info

LogInfo

Le déroulé normal : « campagne lancée », « douze cibles retenues ».

LogInfo(...)
// niveau : Info

LogInfo(m.SenderName, "écrit :", m.Text)

LogInfof

Le déroulé normal : « campagne lancée », « douze cibles retenues ».

LogInfof(format, ...)
// niveau : Info

LogInfof("%d cibles retenues sur %d", gardees, vues)

LogWarn

Ce qui mérite un œil sans être grave : une cible perdue, une page illisible.

LogWarn(...)
// niveau : Warn

LogWarn("attaque de", a.AttackerName, "sur", a.DestinationName)

LogWarnf

Ce qui mérite un œil sans être grave : une cible perdue, une page illisible.

LogWarnf(format, ...)
// niveau : Warn

LogError

Ce qui a échoué.

LogError(...)
// niveau : Error

if err != nil { LogError("relevé impossible :", err) }

LogErrorf

Ce qui a échoué.

LogErrorf(format, ...)
// niveau : Error

Put

Range une valeur.

Put(clé, valeur)
// rend : 1 : une erreur

Put("dernier.systeme", 128)

Get

Relit. Une clé absente rend la chaîne vide, sans erreur.

Get(clé)
// rend : 2 : la valeur et une erreur

sys, err = Get("dernier.systeme")     // ← DEUX cibles, voir le piège n°1

Has

Dit si la clé existe.

Has(clé)
// rend : 1 : un booléen

if Has("liste.noire") {
    noirs, err = Get("liste.noire")
}

Delete

Efface.

Delete(clé)
// rend : 1 : un booléen

StorageKeys

Toutes les clés rangées par ce script.

StorageKeys()
// rend : 1 : une liste

for cle in StorageKeys() {
    Print(cle)
}

PutShared

Range une valeur, lisible par tous les robots.

PutShared(clé, valeur)
// rend : 1 : une erreur

PutShared("fs.cible", "4:120:8")

GetShared

Relit. Une clé absente rend la chaîne vide, sans erreur.

GetShared(clé)
// rend : 2 : la valeur et une erreur

cible, err = GetShared("fs.cible")      // ← DEUX cibles, comme Get

HasShared

Dit si la clé existe.

HasShared(clé)
// rend : 1 : un booléen

if HasShared("fs.fini") {
    DeleteShared("fs.fini")
}

DeleteShared

Efface.

DeleteShared(clé)
// rend : 1 : un booléen

DeleteShared("fs.fini")

SharedKeys

Toutes les clés partagées.

SharedKeys()
// rend : 1 : une liste

for cle in SharedKeys() {
    Print(cle)
}

SendDiscord

Publie sur un webhook Discord.

SendDiscord(webhook, message)
// rend : 1 : une erreur

err = SendDiscord("https://discord.com/api/webhooks/…", "débris à " + coord)

SendDiscordFile

Publie un fichier texte en pièce jointe.

SendDiscordFile(webhook, nom, contenu)
// rend : 1 : une erreur

err = SendDiscordFile(DISCORD_WEBHOOK, "inactifs.csv", lignes)

SendTelegram

Écrit dans une conversation Telegram.

SendTelegram(chatID, message)
// rend : 1 : une erreur

SendTelegram(0, "débris à " + coord)     // 0 : la conversation des réglages

Exit

Arrête le script proprement.

Exit()
// rend : rien

Exit()

Terminate

Le même.

Terminate()
// rend : rien

IsPaused

Dit si le joueur a mis le script en pause.

IsPaused()
// rend : 1 : un booléen

if IsPaused() { SleepSec(30); continue }

Shuffle

Mélange une liste sur place.

Shuffle(liste)
// rend : rien

Shuffle(cibles)          // l'ordre change, la liste reste la même

Bytes2Str

Convertit des octets en texte. Anko ne sait pas écrire un []byte littéral, d'où cette fonction.

Bytes2Str(octets)
// rend : 1 : une chaîne

Notify

Écrit au journal du compte, au niveau Warn.

Notify(titre, message)
// rend : rien

Temps et attente

Sleep

Sleep(n)
// unité : millisecondes

Sleep(500)

SleepMs

SleepMs(n)
// unité : millisecondes

SleepSec

SleepSec(n)
// unité : secondes

SleepSec(30)

SleepMin

SleepMin(n)
// unité : minutes

SleepMin(5)

SleepDur

SleepDur(d)
// unité : une durée

SleepDur(90 * time.Second)

SleepRandMs

SleepRandMs(min, max)
// unité : millisecondes

SleepRandMs(200, 800)    // ✓ vous attendez de 200 à 800 millisecondes

SleepRandSec

SleepRandSec(min, max)
// unité : secondes

SleepRandSec(20, 40)

SleepRandMin

SleepRandMin(min, max)
// unité : minutes

SleepRandMin(3, 8)

SleepRandHour

SleepRandHour(min, max)
// unité : heures

SleepRandHour(1, 3)

SleepUntil

SleepUntil(quand)
// unité : jusqu'à une heure

SleepUntil("03:30:00")           // la prochaine fois qu'il sera 3 h 30

Now

L'instant présent.

Now()
// rend : 1 : une date

if fin != nil && fin.Sub(Now()).Minutes() < 10 {
    LogInfo("le compte s'endort bientôt, on ne lance pas la campagne")
    return
}

GetTimestamp

L'instant présent en secondes depuis 1970.

GetTimestamp()
// rend : 1 : un entier

NowTimeString

L'heure courante, 15:04:05.

NowTimeString()
// rend : 1 : une chaîne

Clock

Clock()
// rend : 3 : heure, minute, seconde

h, m, s = Clock()             // trois cibles, pas une

Date

Date()
// rend : 3 : année, mois, jour

a, mo, j = Date()

Weekday

Le jour de la semaine, dimanche valant zéro.

Weekday()
// rend : 1 : un entier

if Weekday() == 0 { Print("dimanche") }

Unix

Reconstruit une date depuis un horodatage.

Unix(sec, nsec)
// rend : 1 : une date

NowInTimeRange

Dit si l'heure courante est dans la plage.

NowInTimeRange(début, fin)
// rend : 1 : un booléen

if NowInTimeRange("23:00:00", "07:00:00") {
    Print("c'est la nuit")           // la plage passe minuit, c'est prévu
}

DurationBetweenTimeStrings

L'écart entre deux heures d'horloge.

DurationBetweenTimeStrings(a, b)
// rend : 1 : une durée

MillisecondsBetweenTimeStrings

Le même, en millisecondes.

MillisecondsBetweenTimeStrings(a, b)
// rend : 1 : un entier

ShortDur

Écrit une durée lisiblement, 2h15m.

ShortDur(d)
// rend : 1 : une chaîne

Print(cible, ShortDur(secs), "deut", fuel)

GetNextDatetimeAt

La prochaine fois qu'il sera cette heure.

GetNextDatetimeAt(h, m, s)
// rend : 2 : la date et une erreur

quand, err = GetNextDatetimeAt(3, 30, 0)   // rend DEUX valeurs

ParseNextDatetimeAt

La même, depuis "03:30:00".

ParseNextDatetimeAt(s)
// rend : 2 : la date et une erreur

Ordonnancement

ExecIn

Appelle f une fois, dans ms millisecondes.

ExecIn(ms, f)
// rend : 1 : une fonction d'annulation

annuler = ExecIn(60000, func() { Print("une minute plus tard") })

ExecAt

Appelle f une fois, à l'heure dite.

ExecAt(quand, f)
// rend : 1 : une fonction d'annulation

IntervalExec

Appelle f toutes les ms millisecondes, indéfiniment.

IntervalExec(ms, f)
// rend : 1 : une fonction d'annulation

IntervalExec(600000, func() { Print("toutes les dix minutes") })

CronExec

Appelle f selon un horaire.

CronExec(horaire, f)
// rend : 2 : un numéro et une erreur

id, err = CronExec("@03h30", f)

RangeCronExec

Appelle f une fois par jour, à une heure tirée au hasard dans le créneau.

RangeCronExec(début, fin, libellé, f)
// rend : 2 : un numéro et une erreur

id, err = RangeCronExec("03:00:00", "03:45:00", "rentrée de nuit", func() {
    Print("la flotte rentre")
})

RemoveCron

Retire une tâche posée par les deux précédentes.

RemoveCron(numéro)
// rend : 1 : un booléen

if RemoveCron(id) {
    Print("décrochée")
} else {
    Print("ce numéro ne désigne plus rien")
}

ExecInCh

Comme ExecIn, mais le canal se ferme après f.

ExecInCh(ms, f)
// rend : 1 : un canal

<-ExecInCh(60000, func() { Print("une minute plus tard") })

ExecAtCh

Comme ExecAt, mais le canal se ferme après f.

ExecAtCh(quand, f)
// rend : 1 : un canal

<-ExecAtCh(depart, func() {
    LogInfo("c'est l'heure de partir")
})

ExecInSync

Attend, puis appelle f, sans rendre la main.

ExecInSync(ms, f)
// rend : 1 : une fonction d'annulation

ExecAtSync

Attend l'heure dite, puis appelle f.

ExecAtSync(quand, f)
// rend : rien

ExecAtSync("03:17:00", func() { RentrerLaFlotte() })

WaitAttack

Attend une attaque. Le booléen dit si elle est venue.

WaitAttack(secondes)
// rend : 2 : l'attaque et un booléen

a, vu = WaitAttack(0)

WaitAttackGone

Attend qu'une attaque disparaisse.

WaitAttackGone(secondes)
// rend : 2 : l'attaque et un booléen

WaitChatMessage

Attend qu'un joueur écrive.

WaitChatMessage(secondes)
// rend : 2 : le message et un booléen

m, vu = WaitChatMessage(0)

WaitFleet

Attend qu'un worker envoie une flotte.

WaitFleet(secondes)
// rend : 2 : la flotte et un booléen

f, vu = WaitFleet(0)

WaitHunterTargetActive

Attend qu'une cible revienne devant son écran.

WaitHunterTargetActive(secondes)
// rend : 2 : la bascule et un booléen

e, vu = WaitHunterTargetActive(0)

WaitHunterTargetIdle

Attend qu'une cible le quitte.

WaitHunterTargetIdle(secondes)
// rend : 2 : la bascule et un booléen

e, vu = WaitHunterTargetIdle(0)

Célestes

GetUniverseName

Le nom de l'univers.

GetUniverseName()
// rend : 1 : une chaîne

Printf("%s s%d-%s", GetUniverseName(), GetServerNumber(), GetLang())

GetServerNumber

Le numéro du serveur : s152-en donne 152.

GetServerNumber()
// rend : 1 : un entier

Printf("%s s%d-%s", GetUniverseName(), GetServerNumber(), GetLang())

GetLang

Le code de langue du serveur, fr, en…

GetLang()
// rend : 1 : une chaîne

Printf("%s s%d-%s", GetUniverseName(), GetServerNumber(), GetLang())

IsLoggedIn

Dit si la session est ouverte.

IsLoggedIn()
// rend : 1 : un booléen

CharacterClass

La classe : NO_CLASS, COLLECTOR, GENERAL ou DISCOVERER.

CharacterClass()
// rend : 1 : un entier

IsCollector

Raccourci sur la classe.

IsCollector()
// rend : 1 : un booléen

if IsCollector() {
    Print("charge majorée, vitesse de transporteur majorée")
}

IsGeneral

Le même.

IsGeneral()
// rend : 1 : un booléen

IsDiscoverer

Le même.

IsDiscoverer()
// rend : 1 : un booléen

HasCommander

L'officier est-il engagé.

HasCommander()
// rend : 1 : un booléen

HasAdmiral

Le même.

HasAdmiral()
// rend : 1 : un booléen

if !HasAdmiral() {
    Print("moins d'emplacements de flotte que vous ne croyez")
}

HasEngineer

Le même.

HasEngineer()
// rend : 1 : un booléen

HasGeologist

Le même.

HasGeologist()
// rend : 1 : un booléen

HasTechnocrat

Le même.

HasTechnocrat()
// rend : 1 : un booléen

IsVacationModeEnabled

Le compte est-il en mode vacances.

IsVacationModeEnabled()
// rend : 1 : un booléen

if IsVacationModeEnabled() {
    LogWarn("mode vacances : rien ne partira, ce n'est pas une panne du script")
    return
}

IsPioneers

Le compte passe-t-il par le lobby « pioneers ».

IsPioneers()
// rend : 1 : un booléen

SetVacationMode

Gèle le compte. Quarante-huit heures au minimum.

SetVacationMode()
// rend : 1 : une erreur

err = SetVacationMode()

GetPlanets

Toutes vos planètes.

GetPlanets()
// rend : 1 : une liste

planetes = GetPlanets()               // UNE cible : la liste

GetMoons

Toutes vos lunes.

GetMoons()
// rend : 1 : une liste

GetPlanet

Une planète précise.

GetPlanet(quoi)
// rend : 2 : la planète et une erreur

p, err = GetPlanet("1:2:3")           // DEUX cibles, la doc annonce l'erreur

GetMoon

Une lune précise.

GetMoon(quoi)
// rend : 2 : la lune et une erreur

GetCelestial

Une planète ou une lune précise, l'une ou l'autre.

GetCelestial(quoi)
// rend : 2 : le céleste et une erreur

GetCelestials

Toutes vos planètes et lunes ensemble.

GetCelestials()
// rend : 2 : la liste et une erreur

c, err = GetCelestials()   // ✓ c vaut la liste, err vaut nil

GetCachedCelestial

Le céleste tel que le robot le connaît déjà.

GetCachedCelestial(quoi)
// rend : 1 : un céleste

c = GetCachedCelestial("1:2:3")

GetCachedCelestials

Toutes vos planètes et lunes, telles que le robot les connaît déjà.

GetCachedCelestials()
// rend : 1 : une liste

depart = GetCachedCelestials()[0]

GetCachedPlanets

Vos planètes, prises dans le même cache.

GetCachedPlanets()
// rend : 1 : une liste

c = GetCachedPlanets()[0]

GetCachedMoons

Vos lunes, prises dans le même cache.

GetCachedMoons()
// rend : 1 : une liste

GetSortedCelestials

Vos célestes, du plus proche au plus loin.

GetSortedCelestials(destination)
// rend : 1 : une liste

GetSortedPlanets

Vos planètes seules.

GetSortedPlanets(destination)
// rend : 1 : une liste

base = GetSortedPlanets("4:212:9")[0]     // la plus proche de la cible

GetSortedMoons

Vos lunes seules.

GetSortedMoons(destination)
// rend : 1 : une liste

GetResources

Métal, cristal, deutérium, énergie, matière noire, population, nourriture.

GetResources(céleste)
// rend : 2 : les ressources et une erreur

r, err = GetResources("1:2:3")

GetResourcesDetails

Les mêmes, avec la capacité de stockage et la production.

GetResourcesDetails(céleste)
// rend : 2 : le détail et une erreur

d, err = GetResourcesDetails("1:2:3")

GetAllResources

Les ressources de tous les célestes d'un coup.

GetAllResources()
// rend : 2 : une table et une erreur

toutes, err = GetAllResources()

GetEmpire

Tout d'une nature de célestes : ressources, mines, installations, défenses, vaisseaux.

GetEmpire(type)
// rend : 2 : une liste et une erreur

empire, err = GetEmpire(PLANET_TYPE)

GetResourcesBuildings

Les neuf : mines, centrale, réacteur à fusion, satellites, entrepôts.

GetResourcesBuildings(céleste)
// rend : 2 : les niveaux et une erreur

bat, err = GetResourcesBuildings("1:2:3")

GetFacilities

Les onze : usines, chantier, labo, dépôt, silo, terraformeur, dock, base lunaire, phalange, porte de saut.

GetFacilities(céleste)
// rend : 2 : les niveaux et une erreur

inst, err = GetFacilities(celeste)

GetShips

Ce qui est posé là, pas ce qui vole.

GetShips(céleste)
// rend : 2 : les vaisseaux et une erreur

ships, err = GetShips(planete)

GetDefense

Missiles compris.

GetDefense(céleste)
// rend : 2 : les défenses et une erreur

GetTechs

Tout le relevé d'un coup.

GetTechs(céleste)
// rend : 6 : bâtiments, installations, vaisseaux, défenses, recherches, une erreur

bat, inst, vais, def, rech, err = GetTechs("1:2:3")

GetTechs2

Le relevé entier d'un céleste.

GetTechs2(céleste)
// rend : 8 : les six ci-dessus, plus les bâtiments et les recherches de forme de vie

bat, inst, vais, def, rech, lfBat, lfRech, err = GetTechs2("1:2:3")

GetResearch

Elles appartiennent au compte, pas au céleste : aucun argument.

GetResearch()
// rend : 1 : vos recherches

GetProduction

Vaisseaux et défenses au chantier spatial.

GetProduction(céleste)
// rend : 3 : la file, les secondes restantes, une erreur

file, restant, err = GetProduction("1:2:3")

ConstructionsBeingBuilt

Le bâtiment et la recherche en cours.

ConstructionsBeingBuilt(céleste)
// rend : 4 : bâtiment, secondes, recherche, secondes

bID, bSec, rID, rSec = ConstructionsBeingBuilt("1:2:3")

GetResourceSettings

Les sept curseurs de rendement.

GetResourceSettings(planète)
// rend : 2 : les réglages et une erreur

reg, err = GetResourceSettings("1:2:3")

GetFields

GetFields(céleste)
// rend : 1 : les champs, `Built` et `Total`

ch = GetFields("1:2:3")

GetDiameter

Le diamètre, en kilomètres.

GetDiameter(céleste)
// rend : 1 : un entier

Print("rayon :", GetDiameter("1:2:3") / 2)

Build

Bâtiment, technologie, vaisseau ou défense.

Build(céleste, quoi, nombre)
// rend : 1 : une erreur

err = Build(c.GetID(), LIGHTFIGHTER, 5)

BuildBuilding

Refuse ce qui n'est pas un bâtiment.

BuildBuilding(céleste, bâtiment)
// rend : 1 : une erreur

BuildBuilding(c.GetID(), METALMINE)

BuildTechnology

Refuse ce qui n'est pas une technologie.

BuildTechnology(céleste, technologie)
// rend : 1 : une erreur

BuildTechnology(c.GetID(), ENERGYTECHNOLOGY)

TearDown

Démolit un niveau.

TearDown(céleste, bâtiment)
// rend : 1 : une erreur

TearDown(c.GetID(), SOLARPLANT)

CancelBuilding

Annule le chantier en cours.

CancelBuilding(céleste)
// rend : 1 : une erreur

CancelBuilding(c.GetID())

CancelResearch

Annule la recherche en cours.

CancelResearch(céleste)
// rend : 1 : une erreur

CancelResearch(c.GetID())

GetLfBuildings

Une requête à chaque appel.

GetLfBuildings(céleste)
// rend : 2 : les bâtiments et une erreur

b, err = GetLfBuildings(c.GetID())

GetLfResearch

Une requête à chaque appel.

GetLfResearch(céleste)
// rend : 2 : les recherches et une erreur

rech, err = GetLfResearch(c.GetID())

GetLfBonuses

Relit les bonus dans le jeu.

GetLfBonuses()
// rend : 2 : les bonus et une erreur

frais, err = GetLfBonuses()

GetCachedLfBonuses

Ce que le robot sait déjà. Aucune requête.

GetCachedLfBonuses()
// rend : 2 : les bonus et une erreur

bonus, err = GetCachedLfBonuses()

GetPlanetLifeformType

Une requête. Sans erreur : voir plus bas.

GetPlanetLifeformType(planète)
// rend : 1 : la forme de vie

if GetPlanetLifeformType(p) != KAELESH {
    return                                    // ce script ne sait traiter que les Kaelesh
}

CancelLfBuilding

Annule le bâtiment de forme de vie en cours.

CancelLfBuilding(céleste)
// rend : 1 : une erreur

GetLfResearchDetails

Coûts, durées et ce qui est ouvert.

GetLfResearchDetails(céleste)
// rend : 2 : le détail et une erreur

GetChapter

Ses tâches, et l'état de chacune.

GetChapter(chapitre)
// rend : 2 : le chapitre et une erreur

ChapterCollectReward

Ramasse la récompense d'une tâche.

ChapterCollectReward(tâche)
// rend : 1 : une erreur

ChapterClaimAll

Ramasse tout ce qui est ramassable.

ChapterClaimAll(chapitre)
// rend : 1 : une erreur

err = ChapterClaimAll(4006)               // ← à vous : l'identifiant du chapitre

SelectLfResearchSelect

Valide la recherche proposée.

SelectLfResearchSelect(planète, emplacement)
// rend : 1 : une erreur

SelectLfResearchRandom

En retire une autre au sort.

SelectLfResearchRandom(planète, emplacement)
// rend : 1 : une erreur

SelectLfResearchArtifacts

L'échange contre des artefacts.

SelectLfResearchArtifacts(planète, emplacement, techno)
// rend : 1 : une erreur

FreeResetTree

Vide un palier entier. Gratuit, en nombre limité.

FreeResetTree(planète, palier)
// rend : 1 : une erreur

err = FreeResetTree(p, 1)                     // le palier 1, de nouveau vierge

BuyResetTree

Le même geste, contre de la matière noire.

BuyResetTree(planète, palier)
// rend : 1 : une erreur

NewResourceSettings

Compose les sept curseurs.

NewResourceSettings(métal, cristal, deutérium, solaire, fusion, satellite, foreuse)
// rend : 1 : des réglages

apres = NewResourceSettings(avant.MetalMine, avant.CrystalMine, 100,
    avant.SolarPlant, avant.FusionReactor, avant.SolarSatellite, avant.Crawler)

SetResourceSettings

Les applique.

SetResourceSettings(planète, réglages)
// rend : 1 : une erreur

err = SetResourceSettings(c.GetID(), apres)

TechnologyDetails

Prix, durée et niveau, sur ce céleste.

TechnologyDetails(céleste, quoi)
// rend : 2 : le détail et une erreur

Flottes

GetFleets

Vos flottes en l'air, pas celles qui vous visent.

GetFleets()
// rend : 2 : les vols et les emplacements

flottes, emplacements = GetFleets()          // DEUX cibles

GetAttacks

Les flottes hostiles en route vers votre compte.

GetAttacks()
// rend : 1 : une liste

for a in GetAttacks() {
    Print(a.AttackerName, "arrive sur", a.DestinationName, "dans", a.ArriveIn, "s")
    if a.Ships == nil { Print("  composition inconnue") }
}

IsUnderAttack

Vrai s'il y en a au moins une.

IsUnderAttack()
// rend : 1 : un booléen

Distance

La distance dans l'unité du jeu. Aucune requête.

Distance(origine, cible)
// rend : 1 : un entier

Print(Distance(depart, "1:2:4"))       // le céleste suffit, pas besoin de .GetCoordinate()

FlightTime

Une requête à chaque appel.

FlightTime(origine, cible, vitesse, flotte, mission, [stationnement])
// rend : 2 : les secondes et le deutérium

secs, fuel = FlightTime(depart, cible, HUNDRED_PERCENT, flotte, TRANSPORT)

FindDebrisFieldWithMinimumTravelTime

Un champ de ruines.

FindDebrisFieldWithMinimumTravelTime(origine, flotte, minimum)
// rend : 4

dest, secs, deut, err = FindDebrisFieldWithMinimumTravelTime(p.GetCoordinate(),
    flotte, 7 * time.Hour)

FindEmptyPlanetWithMinimumTravelTime

Une place vide.

FindEmptyPlanetWithMinimumTravelTime(origine, flotte, minimum)
// rend : 4

dest, secs, deut, err = FindEmptyPlanetWithMinimumTravelTime(c.GetCoordinate(),
        flotte, HEURES * 3600)

FindInactivePlanetWithMinimumTravelTime

Un joueur inactif.

FindInactivePlanetWithMinimumTravelTime(origine, flotte, minimum, avecLune)
// rend : 4

FindAbandonedPlanetWithMinimumTravelTime

Une planète détruite.

FindAbandonedPlanetWithMinimumTravelTime(origine, flotte, minimum, avecLune)
// rend : 4

Speed

La vitesse du vaisseau le plus lent, celle qui dicte le vol.

Speed(flotte)
// rend : 1 : un entier

Print(Speed(f), Cargo(f))

Cargo

Le fret total, ressources confondues.

Cargo(flotte)
// rend : 1 : un entier

Print(Speed(f), Cargo(f))

ShipSpeed

Sa vitesse.

ShipSpeed(id)
// rend : 1 : un entier

ShipFuel

Sa consommation de référence, celle qui entre dans le calcul du carburant. Jamais moins de 1.

ShipFuel(id)
// rend : 1 : un entier

ShipCargo

Sa soute.

ShipCargo(id)
// rend : 1 : un entier

Print(ShipCargo(LARGECARGO))     // 25000 de base, davantage avec l'hyperespace

CalcCargo

Deux solutions séparées, pas les deux moitiés d'une flotte.

CalcCargo(total)
// rend : 2 : des grands transporteurs, OU des petits

gt, pt = CalcCargo(res.Total())

CalcFastCargo

La composition que votre parc autorise.

CalcFastCargo(gtDispo, ptDispo, total)
// rend : 3 : des grands, des petits, et le fret obtenu

gt, pt, fret = CalcFastCargo(10, 8, res.Total())

AttackStrength

Puissance de feu, plus 10 % de la valeur de base par niveau d'armes.

AttackStrength(id, recherches)
// rend : 1 : un entier

Print(AttackStrength(LIGHTFIGHTER, nil))              // avec vos recherches

ShieldPower

Bouclier, plus 10 % par niveau de bouclier.

ShieldPower(id, recherches)
// rend : 1 : un entier

StructuralIntegrity

Structure, plus 10 % par niveau de blindage.

StructuralIntegrity(id, recherches)
// rend : 1 : un entier

GetPrice

nbr est un niveau pour un bâtiment ou une recherche, un nombre d'exemplaires pour un vaisseau ou une défense.

GetPrice(id, nbr)
// rend : 1 : des ressources

p = GetPrice(METALMINE, 20)

ConstructionTime

Durée de construction, installations à l'appui.

ConstructionTime(id, nbr, installations)
// rend : 1 : une durée

Print(ShortDur(ConstructionTime(LARGECARGO, 20, inst)))

TechnologyConstructionTime

Durée d'une recherche, niveau de laboratoire donné en clair.

TechnologyConstructionTime(id, niveau, laboratoire)
// rend : 1 : une durée

Print(ShortDur(TechnologyConstructionTime(ESPIONAGETECHNOLOGY, 10, inst.ResearchLab)))

NewFleet

À enchaîner. nil sans session ouverte.

NewFleet()
// rend : 1 : un constructeur

f = NewFleet()

Phalanx

Relève ce qui vole autour d'une position.

Phalanx(lune, cible)
// rend : 2 : les vols et une erreur

vols, err = Phalanx(lune.GetID(), "1:2:8")

CancelFleet

Fait faire demi-tour à un vol en cours.

CancelFleet(flotte)
// rend : 1 : une erreur

err = CancelFleet(vol.ID)

JumpGate

Saute des vaisseaux d'une lune à l'autre.

JumpGate(origine, destination, vaisseaux)
// rend : 1 : une erreur

err = JumpGate(lune.GetID(), destinations[0], vaisseaux)

JumpGateDestinations

Ce qui est joignable, et dans combien de temps.

JumpGateDestinations(origine)
// rend : 3 : les lunes, la recharge, une erreur

destinations, recharge, err = JumpGateDestinations(lune.GetID())

JumpGate2

Le même saut, avec le délai en nombre.

JumpGate2(origine, destination, vaisseaux)
// rend : 3 : la réussite, la recharge, une erreur

parti, recharge, err = JumpGate2(lune.GetID(), destinations[0], vaisseaux)

SendDiscoveryFleet

Une expédition sur UNE position.

SendDiscoveryFleet(origine, destination)
// rend : 1 : une erreur

err = SendDiscoveryFleet("1:64:8", "1:64:12")

GetDepartureTime

Quand décoller pour arriver à l'heure dite.

GetDepartureTime(arrivée, origine, destination, flotte, vitesse, mission)
// rend : 1 : une heure

depart = GetDepartureTime("08:00:00", "1:64:8", "1:64:12", flotte, TEN_PERCENT, TRANSPORT)

LowestSpeed

L'allure la moins chère qui parte encore.

LowestSpeed(arrivée, origine, destination, flotte)
// rend : 4 : l'allure, le carburant, l'heure de départ, une erreur

allure, deut, depart, err = LowestSpeed("08:00:00", "1:64:8", "1:64:12", flotte)

StartPhalanxSession

Règle la surveillance d'une position et l'allume.

StartPhalanxSession(lune, cible, cadence)
// rend : 2 : un identifiant et une erreur

id, err = StartPhalanxSession(lune.GetID(), "1:2:8", 300)   // toutes les 5 min

StopPhalanxSession

L'éteint.

StopPhalanxSession(identifiant)
// rend : 1 : une erreur

StopPhalanxSession(id)

CalcPreferredCargo

Compose un transport en servant d'abord le type voulu.

CalcPreferredCargo(préféré, sondes, éclaireurs, grands, petits, total, arrondi)
// rend : 5 : sondes, éclaireurs, grands, petits, le fret

sondes, eclaireurs, gt, pt, fret = CalcPreferredCargo(LARGECARGO, 0, 0, 50, 20, 5000000, true)

CreateUnion

Ouvre une attaque groupée autour d'un vol.

CreateUnion(vol, joueurs)
// rend : 2 : le numéro de l'union et une erreur

Workers

StartBrain

Le Brain. Files de construction et recherches.

StartBrain()
// rend : 1 : une erreur

StartBrain()

StopBrain

Le Brain. Files de construction et recherches.

StopBrain()
// rend : 1 : une erreur

StopBrain()

StartScanner

Le scanner. Balayage des systèmes.

StartScanner()
// rend : 1 : une erreur

StartScanner()

StopScanner

Le scanner. Balayage des systèmes.

StopScanner()
// rend : 1 : une erreur

StopScanner()

StartHunter

Le chasseur. Traque des cibles.

StartHunter()
// rend : 1 : une erreur

StartHunter()

StopHunter

Le chasseur. Traque des cibles.

StopHunter()
// rend : 1 : une erreur

StopHunter()

StartSleepMode

La veille. Voir l'avertissement plus bas.

StartSleepMode()
// rend : 1 : une erreur

StopSleepMode

La veille. Voir l'avertissement plus bas.

StopSleepMode()
// rend : 1 : une erreur

StartFarmingBot

Le pillage. StartFarmingBot() donne une campagne au Pillage s'il n'en a pas.

StartFarmingBot()
// rend : 1 : une erreur

StartFarmingBot()

StopFarmingBot

Le pillage. StartFarmingBot() donne une campagne au Pillage s'il n'en a pas.

StopFarmingBot()
// rend : 1 : une erreur

err = StopFarmingBot()

StartFarmSession

Lance une campagne désignée, comme le ▶ de sa ligne.

StartFarmSession(campagne)
// rend : 1 : une erreur

StartFarmSession(campagne.ID)

StartExpeditionsBot

Les expéditions.

StartExpeditionsBot()
// rend : 1 : une erreur

StartExpeditionsBot()

StopExpeditionsBot

Les expéditions.

StopExpeditionsBot()
// rend : 1 : une erreur

StopExpeditionsBot()

StartColonizerBot

Le colonisateur.

StartColonizerBot()
// rend : 1 : une erreur

StartColonizerBot()

StopColonizerBot

Le colonisateur.

StopColonizerBot()
// rend : 1 : une erreur

StopColonizerBot()

StartDiscoveryBot

Le découvreur.

StartDiscoveryBot()
// rend : 1 : une erreur

StartDiscoveryBot()

StopDiscoveryBot

Le découvreur.

StopDiscoveryBot()
// rend : 1 : une erreur

StopDiscoveryBot()

StartDefenderBot

La défense.

StartDefenderBot()
// rend : 1 : une erreur

StartDefenderBot()

StopDefenderBot

La défense.

StopDefenderBot()
// rend : 1 : une erreur

StopDefenderBot()

IsRunningBrainBot

Vrai si le Brain est allumé.

IsRunningBrainBot()
// rend : 1 : un booléen

Print(IsRunningBrainBot(), IsRunningExpeditionsBot(), IsRunningColonizerBot())

IsRunningFarmingBot

Vrai si le pillage est allumé.

IsRunningFarmingBot()
// rend : 1 : un booléen

if IsRunningFarmingBot() {
  Print("le pillage tourne")
}

IsRunningExpeditionsBot

IsRunningExpeditionsBot()
// rend : 1 : un booléen

Print(IsRunningBrainBot(), IsRunningExpeditionsBot(), IsRunningColonizerBot())

IsRunningColonizerBot

IsRunningColonizerBot()
// rend : 1 : un booléen

Print(IsRunningBrainBot(), IsRunningExpeditionsBot(), IsRunningColonizerBot())

IsRunningDiscoveryBot

IsRunningDiscoveryBot()
// rend : 1 : un booléen

Print(IsRunningDiscoveryBot(), IsRunningDefenderBot())

IsRunningDefenderBot

IsRunningDefenderBot()
// rend : 1 : un booléen

Print(IsRunningDiscoveryBot(), IsRunningDefenderBot())

StartWorker

Allume le worker nommé.

StartWorker(nom)
// rend : 1 : une erreur

err = StartWorker("timer")

StopWorker

L'éteint.

StopWorker(nom)
// rend : 1 : une erreur

StopWorker("spyer")

IsWorkerRunning

Dit s'il est allumé.

IsWorkerRunning(nom)
// rend : 1 : un booléen

Print(nom, IsWorkerRunning(nom))

ListWorkers

Les noms acceptés, en anglais.

ListWorkers()
// rend : 1 : une liste

for nom in ListWorkers() {
  Print(nom, IsWorkerRunning(nom))
}

PauseBot

Coupe toute communication avec le jeu.

PauseBot()
// rend : 1 : une erreur

PauseBot()

ResumeBot

La rend.

ResumeBot()
// rend : 1 : une erreur

ResumeBot()

IsBotPaused

Dit où l'on en est.

IsBotPaused()
// rend : 1 : un booléen

LogOut

Alias de PauseBot, pour les scripts venus de Ninja.

LogOut()
// rend : 1 : une erreur

Login

Alias de ResumeBot.

Login()
// rend : 1 : une erreur

NewFarmSession

À enchaîner, puis BuildFarmSession().

NewFarmSession()
// rend : 1 : un constructeur

f = NewFarmSession()

GetExpeditionsStrategypas encore livré

Documentée ici, mais pas encore dans le binaire publié : elle arrivera à la prochaine version du bot.

"majority", "all" ou "never".

GetExpeditionsStrategy()
// rend : 1 : un texte

if GetExpeditionsStrategy() != "all" {
    err = SetExpeditionsStrategy("all")
    if err != nil { LogError("stratégie :", err) }
}

SetExpeditionsStrategypas encore livré

Documentée ici, mais pas encore dans le binaire publié : elle arrivera à la prochaine version du bot.

La change, réglage enregistré.

SetExpeditionsStrategy(nom)
// rend : 1 : une erreur

err = SetExpeditionsStrategy("all")

GetFleetSlotsReserved

Le nombre d'emplacements laissés libres.

GetFleetSlotsReserved()
// rend : 1 : un entier

garde = GetFleetSlotsReserved()

SetFleetSlotsReserved

Change ce nombre, réglage enregistré.

SetFleetSlotsReserved(n)
// rend : 1 : une erreur

IgnorePlayer

Épargne un joueur. Son nom ou son identifiant.

IgnorePlayer(joueur)
// rend : 1 : une erreur

IgnorePlayer("Xylo")          // par son nom, comme à l'écran

IgnorePlanet

Épargne une position, la lune comprise.

IgnorePlanet(coord)
// rend : 1 : une erreur

IgnorePlanet("1:42:8")        // la planète ET sa lune

IgnoreAlliance

Épargne tous les membres connus d'une alliance.

IgnoreAlliance(tag)
// rend : 1 : une erreur

IgnoreAlliance("SLD")         // tous ses membres que le Scanner a vus

UnignorePlayer

Le retire de la liste.

UnignorePlayer(joueur)
// rend : 1 : une erreur

UnignorePlanet

UnignorePlanet(coord)
// rend : 1 : une erreur

UnignoreAlliance

UnignoreAlliance(tag)
// rend : 1 : une erreur

IsPlayerIgnored

Dit s'il est dans la liste.

IsPlayerIgnored(joueur)
// rend : 1 : un booléen

if IsPlayerIgnored("Xylo") {
    Print("il est tranquille")
}

IsPlanetIgnored

IsPlanetIgnored(coord)
// rend : 1 : un booléen

IsAllianceIgnored

IsAllianceIgnored(tag)
// rend : 1 : un booléen

GetIgnored

Toute la liste, les trois genres mêlés.

GetIgnored()
// rend : 2 : la liste et une erreur

liste, err = GetIgnored()

GetFarmBlacklist

Toute la liste, joueurs et positions mêlés.

GetFarmBlacklist()
// rend : 2 : la liste et une erreur

liste, err = GetFarmBlacklist()

AddToFarmBlacklist

Un joueur, par son nom ou son identifiant, ou une position.

AddToFarmBlacklist(cible)
// rend : 1 : une erreur

AddToFarmBlacklist("1:42:8")      // à la main : la planète ET sa lune

RemoveFromFarmBlacklist

Retirer ce qui n'y est pas n'est pas une erreur ; un nom que rien ne connaît en est une.

RemoveFromFarmBlacklist(cible)
// rend : 1 : une erreur

RemoveFromFarmBlacklist(e.Key)   // ne rendre que les entrées d'office

ClearFarmBlacklist

Tout vider, entrées d'office comprises.

ClearFarmBlacklist()
// rend : 1 : une erreur

ClearFarmBlacklist()

GetHunterTargets

Les joueurs sous surveillance.

GetHunterTargets()
// rend : 2 : la liste et une erreur

cibles, err = GetHunterTargets()

AddHunterTarget

Met un joueur sous surveillance.

AddHunterTarget(joueur)
// rend : 1 : une erreur

AddHunterTarget("Xylo")          // par son nom, comme à l'écran

RemoveHunterTarget

Le retire, avec son historique.

RemoveHunterTarget(joueur)
// rend : 1 : une erreur

PauseHunterTarget

Le suspend sans perdre son historique.

PauseHunterTarget(joueur, suspendu)
// rend : 1 : une erreur

GetScripts

Tous les scripts du compte.

GetScripts()
// rend : 1 : une liste de noms

GetRunningScripts

Ceux qui tournent en ce moment.

GetRunningScripts()
// rend : 1 : une liste de noms

IsScriptRunning

Celui-là tourne-t-il.

IsScriptRunning(nom)
// rend : 1 : un booléen

if IsScriptRunning(GARDE) {
        LogInfo("la garde tourne déjà")
        return
    }

IsPausedScript

Celui-là est-il en pause.

IsPausedScript(nom)
// rend : 1 : un booléen

if IsPausedScript(GARDE) {
        ResumeScript(GARDE)
    }

StartScript

Le lance et rend la main aussitôt.

StartScript(nom)
// rend : 1 : une erreur

StartScript("garde-de-nuit")

StopScript

L'arrête.

StopScript(nom)
// rend : 1 : une erreur

StopScript("garde-de-nuit")

PauseScript

Le suspend.

PauseScript(nom)
// rend : 1 : une erreur

ResumeScript

Le reprend là où il en était.

ResumeScript(nom)
// rend : 1 : une erreur

ResumeScript(GARDE)

IsFarmSessionOngoing

Une campagne travaille-t-elle en ce moment.

IsFarmSessionOngoing()
// rend : 1 : un booléen

if IsFarmSessionOngoing() {
    PauseFarmingBot()          // on rend les slots au Defender
    SleepMin(30)
    ResumeFarmingBot()         // et on repart là où on s'était arrêté
}

IsPausedFarmingBot

Une campagne est-elle en pause.

IsPausedFarmingBot()
// rend : 1 : un booléen

FarmingBotSessionsCount

Combien de campagnes tournent.

FarmingBotSessionsCount()
// rend : 1 : un entier

PauseFarmingBot

Suspend la campagne en cours.

PauseFarmingBot()
// rend : 1 : une erreur

PauseFarmingBot()          // on rend les slots au Defender

ResumeFarmingBot

La reprend où elle s'est arrêtée.

ResumeFarmingBot()
// rend : 1 : une erreur

ResumeFarmingBot()         // et on repart là où on s'était arrêté

AbortAllFarmingSessions

Arrête tout et retire toutes les campagnes, celle qui tourne et celles de l'onglet Pillage comprises.

AbortAllFarmingSessions()
// rend : 1 : une erreur

AbortAllFarmingSessions()   // le soir : plus rien ne tourne, plus rien d'hier

RepatriateNow

Lance une passe de rapatriement sans attendre.

RepatriateNow()
// rend : 1 : une erreur

RepatriateNow()

RepatriateSetAllDestinations

Ce céleste reçoit, tous les autres l'alimentent.

RepatriateSetAllDestinations(céleste)
// rend : 1 : une erreur

RepatriateSetAllDestinations("1:64:8")

ClearAllConstructionQueues

Vide la file de chaque céleste en mode File.

ClearAllConstructionQueues()
// rend : 1 : une erreur

ClearAllConstructionQueues()

AddItemToQueue

Pose une ligne au bout de la file d'un céleste.

AddItemToQueue(céleste, quoi, nombre)
// rend : 1 : une erreur

err = AddItemToQueue(c.GetID(), METALMINE, 0)

IsStarted

Le robot tourne-t-il pour ce compte.

IsStarted()
// rend : 1 : un booléen

IsActive

Le redémarrera-t-il au prochain lancement.

IsActive()
// rend : 1 : un booléen

GetNextSleepTime

Le prochain coucher.

GetNextSleepTime()
// rend : 1 : une heure, ou `nil`

fin = GetNextSleepTime()

GetNextWakeTime

Le prochain réveil.

GetNextWakeTime()
// rend : 1 : une heure, ou `nil`

SetDefenderCheckInterval

La cadence de la ronde, en secondes.

SetDefenderCheckInterval(min, max)
// rend : 1 : une erreur

TriggerFleetSave

Sort la flotte maintenant, avec les réglages du mode veille.

TriggerFleetSave()
// rend : 1 : une erreur

err = TriggerFleetSave()

Galaxie

GetCachedPlayer

PlayerID, PlayerName, Points, Rank, Total, HonourPoints.

GetCachedPlayer()
// rend : 1 : votre fiche

moi = GetCachedPlayer()          // UNE cible : c'est une structure

GetSlots

InUse, Total, ExpInUse, ExpTotal.

GetSlots()
// rend : 1 : vos emplacements de flotte

slots = GetSlots()               // UNE cible également

ServerURL

L'adresse de votre serveur, sans barre finale. Un ajout de Kepler.

ServerURL()
// rend : 2 : une adresse et une erreur

adresse, err = ServerURL()       // DEUX cibles

GalaxyInfos

Les quinze positions d'un système.

GalaxyInfos(galaxie, système)
// rend : 2 : le relevé et une erreur

sys, err = GalaxyInfos(1, 224)         // DEUX cibles

GalaxyInfosUsing

Le même, en se plaçant sur un céleste.

GalaxyInfosUsing(galaxie, système, céleste)
// rend : 2 : le relevé et une erreur

sys, err = GalaxyInfosUsing(4, 116, c.GetID())

GetPlanetInfo

Une seule position.

GetPlanetInfo(coordonnée)
// rend : 2 : la position et une erreur

p, err = GetPlanetInfo("4:116:6")

GetPlanetInfoUsing

La même, en se plaçant sur un céleste.

GetPlanetInfoUsing(coordonnée, céleste)
// rend : 2 : la position et une erreur

CoordinatesAvailableForDiscoveryFleet

Les positions où une expédition de forme de vie peut partir, places vides comprises. Liste vide quand il n'y en a aucune.

CoordinatesAvailableForDiscoveryFleet(origine, galaxie, système)
// rend : 2 : la liste et une erreur

coords, err = CoordinatesAvailableForDiscoveryFleet(origine, 1, 64)

GetSystemsInRange

Dans l'ordre des numéros.

GetSystemsInRange(origine, rayon)
// rend : 1 : une liste de systèmes

Print(GetSystemsInRange(3, 2))       // [1 2 3 4 5]

GetSystemsInRangeAsc

Du plus proche au plus loin.

GetSystemsInRangeAsc(origine, rayon)
// rend : 1 : une liste de systèmes

Print(GetSystemsInRangeAsc(3, 2))    // [3 2 4 1 5]

GetSystemsInRangeDesc

Du plus loin au plus proche.

GetSystemsInRangeDesc(origine, rayon)
// rend : 1 : une liste de systèmes

Print(GetSystemsInRangeDesc(3, 2))   // [5 1 4 2 3]

PlayersData

Tous les joueurs de l'univers.

PlayersData()
// rend : 2 : la liste et une erreur

joueurs, err = PlayersData()          // DEUX cibles

PlayerDataByID

Erreur franche si l'identifiant est inconnu.

PlayerDataByID(id)
// rend : 2 : un joueur et une erreur

p, err = PlayerDataByID(id)

PlayerDataByName

Pseudo entier, la casse est ignorée.

PlayerDataByName(pseudo)
// rend : 2 : un joueur et une erreur

cible, err = PlayerDataByName("Xylo")

HighscoreData

Par l'API du jeu. Des identifiants, pas des noms.

HighscoreData(category, typ)
// rend : 2 : le classement entier et une erreur

rangs, err = HighscoreData(1, 0)      // joueurs, classement général

GetHighscore

Ne fonctionne plus en version 13.

GetHighscore(category, typ, page)
// rend : 2 : une page et une erreur

PageContent

Une page du jeu, par la session du compte.

PageContent(requête)
// rend : 2 : le texte et une erreur

html, err = PageContent("page=ingame&component=overview")

FetchURL

N'importe quelle adresse, par la même session.

FetchURL(adresse)
// rend : 2 : le texte et une erreur

corps, err = FetchURL("https://exemple.net/api")

HttpRequest

Une requête complète, par la même session.

HttpRequest(méthode, adresse, en-têtes, corps)
// rend : 3 : le texte, le code et une erreur

corps, code, err = HttpRequest("POST", "https://exemple.net/api", entêtes, charge)

SendMessage

Un message privé, par le chat du jeu.

SendMessage(playerID, message)
// rend : 1 : une erreur

err = SendMessage(cible.ID, "Bonjour, je viens en paix.")

GetEspionageReportMessages

Le résumé de chaque rapport de la première page.

GetEspionageReportMessages()
// rend : 2 : la liste et une erreur

resumes, err = GetEspionageReportMessages()

GetEspionageReportMessagesPages

La même chose, sur plusieurs pages.

GetEspionageReportMessagesPages(pages)
// rend : 2 : la liste et une erreur

anciens, err = GetEspionageReportMessagesPages(3)

GetEspionageReport

Le rapport détaillé d'un message.

GetEspionageReport(idMessage)
// rend : 2 : le rapport et une erreur

detail, err = GetEspionageReport(resumes[0].ID)

GetEspionageReportFor

Le dernier rapport visant cette position.

GetEspionageReportFor(coordonnée)
// rend : 2 : le rapport et une erreur

rapport, err = GetEspionageReportFor("1:2:3")

GetCombatReportSummaryFor

Le dernier combat à cette position.

GetCombatReportSummaryFor(coordonnée)
// rend : 2 : le résumé et une erreur

combat, err = GetCombatReportSummaryFor("1:2:3")

DeleteMessage

Efface un message.

DeleteMessage(idMessage)
// rend : 1 : une erreur

DeleteMessage(resumes[0].ID)

DeleteAllMessagesFromTab

Vide un onglet entier.

DeleteAllMessagesFromTab(onglet)
// rend : 1 : une erreur

DeleteAllMessagesFromTab(20)

CountColonies

Ce que vous avez, ce que vous pouvez avoir.

CountColonies()
// rend : 2 : le nombre et le maximum

combien, possible = CountColonies()

Boîte à outils

Min

Le plus petit des deux.

Min(x, y)
// rend : 1 : un nombre

Printf("%.0f", Min(3, 5))    // ✓ 3

Max

Le plus grand des deux.

Max(x, y)
// rend : 1 : un nombre

Abs

La valeur absolue.

Abs(x)
// rend : 1 : un nombre

Ceil

L'entier au-dessus.

Ceil(x)
// rend : 1 : un nombre

Floor

L'entier en dessous.

Floor(x)
// rend : 1 : un nombre

Floor(o["planet_id"] / 2) == 16814034   // true

Round

L'entier le plus proche.

Round(x)
// rend : 1 : un nombre

Itoa(Round(2.7))   // "3"

Pow

x à la puissance y.

Pow(x, y)
// rend : 1 : un nombre

Print(Itoa(Pow(10, 7)))      // ✓ 10000000 : passez par Itoa pour afficher

Sqrt

La racine carrée.

Sqrt(x)
// rend : 1 : un nombre

Random

Un entier tiré au hasard, bornes comprises.

Random(min, max)
// rend : 1 : un entier

Atoi

Lit un entier dans un texte.

Atoi(texte)
// rend : 1 : un entier

Atoi("42")                    // 42

Itoa

Écrit un entier en texte.

Itoa(n)
// rend : 1 : une chaîne

Print(Itoa(Pow(10, 7)))      // ✓ 10000000 : passez par Itoa pour afficher

Dotify

Met en forme un grand nombre à la façon du jeu : 1000000 donne 1.000.000.

Dotify(n)
// rend : 1 : une chaîne

Base64

Encode.

Base64(texte)
// rend : 1 : une chaîne

code = Base64("coucou")

Base64Decode

Décode.

Base64Decode(texte)
// rend : 2 : le texte et une erreur

clair, err = Base64Decode(code)      // ← DEUX cibles

JsonDecode

Décode du JSON.

JsonDecode(données)
// rend : 2 : la valeur et une erreur

o, err = JsonDecode(corps)            // ← DEUX cibles, encore

JsonEncode

Écrit du JSON.

JsonEncode(valeur)
// rend : 2 : le texte et une erreur

texte, err = JsonEncode(charge)       // ← DEUX cibles

JsonEncodeIndent

Le même, mis en forme.

JsonEncodeIndent(valeur, retrait)
// rend : 2 : le texte et une erreur

MapKeys

Triées.

MapKeys(tableau)
// rend : 1 : la liste des clés

Print(MapKeys(cache)[i], MapValues(cache)[i])

MapValues

Dans l'ordre des clés.

MapValues(tableau)
// rend : 1 : la liste des valeurs

Print(MapKeys(cache)[i], MapValues(cache)[i])

NewShipsInfos

À remplir avec .Set(id, nombre), puis à passer à FlightTime, Speed ou Cargo.

NewShipsInfos()
// rend : 1 : une flotte vide

flotte = NewShipsInfos()

NewResources

Les trois quantités d'un coup.

NewResources(metal, cristal, deut)
// rend : 1 : des ressources

res = NewResources(10000, 20000, 30000)

NewCoordinate

Le type est PLANET_TYPE, MOON_TYPE ou DEBRIS_TYPE.

NewCoordinate(galaxie, système, position, type)
// rend : 1 : une coordonnée

ParseCoord

Lit "1:2:3" ou "M:1:2:3".

ParseCoord(chaîne)
// rend : 2 : la coordonnée et une erreur

coord, err = ParseCoord("M:1:2:3")     // DEUX cibles

ID2Str

Le nom lisible d'un vaisseau, d'une défense, d'un bâtiment ou d'une technologie.

ID2Str(id)
// rend : 1 : une chaîne

Print(ID2Str(204))            // LightFighter

ShortShipsInfos

Résume une flotte : LightFighter: 120, SmallCargo: 40.

ShortShipsInfos(flotte)
// rend : 1 : une chaîne

LogInfof("%s : %s", planete.Coordinate, ShortShipsInfos(ships))

VersionCompare

-1 si a est plus ancienne, 0 si elles sont égales, 1 si a est plus récente.

VersionCompare(a, b)
// rend : 1 : un entier

Print(VersionCompare("1.2", "1.2.0"))     // 0 : les segments absents valent zéro

GetItems

Tous les objets du céleste.

GetItems(céleste)
// rend : 2 : les objets et une erreur

objets, err = GetItems(c.GetID())

GetActiveItems

Les seuls en cours d'effet.

GetActiveItems(céleste)
// rend : 2 : les objets et une erreur

actifs, err = GetActiveItems(c.GetID())

ActivateItem

Allume un objet de l'inventaire.

ActivateItem(référence, céleste)
// rend : 1 : une erreur

err = ActivateItem(o.Ref, c.GetID())

RecruitOfficer

Engage un officier. 2 commandant, 3 amiral, 4 ingénieur, 5 géologue, 6 technocrate ; 7 ou 90 jours.

RecruitOfficer(officier, jours)
// rend : 1 : une erreur

Print(RecruitOfficer(5, 7)) // un géologue pour sept jours

GetAuction

L'enchère en cours.

GetAuction()
// rend : 2 : l'enchère et une erreur

ench, err = GetAuction()

BuyOfferOfTheDay

Achète l'offre du marchand.

BuyOfferOfTheDay()
// rend : 1 : une erreur

Print(BuyOfferOfTheDay())

SendIPM

Lance des missiles.

SendIPM(planète, cible, nombre, défense)
// rend : 2 : les missiles partis et une erreur

partis, err = SendIPM(c.GetID(), "1:1:1", 10, 0)

DestroyRockets

Détruit des missiles de votre silo.

DestroyRockets(planète, abm, ipm)
// rend : 1 : une erreur

ShipsAttackStrength

La puissance de feu d'une flotte entière.

ShipsAttackStrength(flotte, recherches)
// rend : 1 : un entier

ShipsAttackStrengthUsingOwnResearches

La même, avec vos recherches.

ShipsAttackStrengthUsingOwnResearches(flotte)
// rend : 1 : un entier

Print("puissance :", ShipsAttackStrengthUsingOwnResearches(flotte))

NewTemperature

Les deux bornes, comme le jeu les affiche.

NewTemperature(min, max)
// rend : 1 : une température

temp = NewTemperature(-12, 40)

SolarSatelliteProduction

L'énergie produite par des satellites.

SolarSatelliteProduction(température, nombre)
// rend : 1 : un entier

Print("énergie :", SolarSatelliteProduction(temp, 123))

GetRequirements

Les prérequis directs d'une construction.

GetRequirements(id)
// rend : 1 : une table

Print(GetRequirements(LIGHTLASER))   // chantier 2, technologie laser 3

ConvertIntoCoordinate

Normalise tout ce qui désigne une position.

ConvertIntoCoordinate(quoi)
// rend : 2 : la coordonnée et une erreur

GetPlayerCoordinates

Les positions relevées d'un joueur.

GetPlayerCoordinates(joueur)
// rend : 1 : une liste de coordonnées

SetHomeWorld

Retient votre base.

SetHomeWorld(céleste)
// rend : 1 : une erreur

GetHomeWorld

La relit.

GetHomeWorld()
// rend : 1 : un céleste, ou rien

Constantes et valeurs

Réagir à un événement

OnAttackChun canal d'attaques
OnAttackGoneChun canal d'attaques
OnStateChangeChun canal d'états
OnChatMessageReceivedChun canal de messages
OnFleetChun canal de flottes
OnHunterTargetActiveChun canal de bascules
OnHunterTargetIdleChun canal de bascules

Les quatre tableaux d'identifiants

ShipsArr16 identifiants
DefencesArr10 identifiants
TechnologiesArr16 identifiants
BuildingsArr23 identifiants

Les noms d'identifiants

SMALLCARGO
LARGECARGO
LIGHTFIGHTER
HEAVYFIGHTER
CRUISER
BATTLESHIP
COLONYSHIP
RECYCLER
ESPIONAGEPROBE
BOMBER
DESTROYER
DEATHSTAR
BATTLECRUISER
CRAWLER
REAPER
PATHFINDER
ROCKETLAUNCHER
LIGHTLASER
HEAVYLASER
GAUSSCANNON
IONCANNON
PLASMATURRET
SMALLSHIELDDOME
LARGESHIELDDOME
ANTIBALLISTICMISSILES
INTERPLANETARYMISSILES
ESPIONAGETECHNOLOGY
COMPUTERTECHNOLOGY
WEAPONSTECHNOLOGY
SHIELDINGTECHNOLOGY
ARMOURTECHNOLOGY
ENERGYTECHNOLOGY
HYPERSPACETECHNOLOGY
COMBUSTIONDRIVE
IMPULSEDRIVE
HYPERSPACEDRIVE
LASERTECHNOLOGY
IONTECHNOLOGY
PLASMATECHNOLOGY
INTERGALACTICRESEARCHNETWORK
ASTROPHYSICS
GRAVITONTECHNOLOGY
METALMINE
CRYSTALMINE
DEUTERIUMSYNTHESIZER
SOLARPLANT
FUSIONREACTOR
SOLARSATELLITE
METALSTORAGE
CRYSTALSTORAGE
DEUTERIUMTANK
SHIELDEDMETALDEN
UNDERGROUNDCRYSTALDEN
SEABEDDEUTERIUMDEN
ALLIANCEDEPOT
ROBOTICSFACTORY
SHIPYARD
RESEARCHLAB
MISSILESILO
NANITEFACTORY
TERRAFORMER
SPACEDOCK
LUNARBASE
SENSORPHALANX
JUMPGATE

Missions

ATTACK1
GROUPEDATTACK2
TRANSPORT3
PARK4
PARKINTHATALLY5
SPY6
COLONIZE7
RECYCLEDEBRISFIELD8
DESTROY9
MISSILEATTACK10
EXPEDITION15
SEARCHFORLIFEFORMS18

Vitesses

TEN_PERCENT
TWENTY_PERCENT
THIRTY_PERCENT
FORTY_PERCENT
FIFTY_PERCENT
SIXTY_PERCENT
SEVENTY_PERCENT
EIGHTY_PERCENT
NINETY_PERCENT
HUNDRED_PERCENT
FIVE_PERCENT
FIFTEEN_PERCENT
TWENTY_FIVE_PERCENT
THIRTY_FIVE_PERCENT
FORTY_FIVE_PERCENT
FIFTY_FIVE_PERCENT
SIXTY_FIVE_PERCENT
SEVENTY_FIVE_PERCENT
EIGHTY_FIVE_PERCENT
NINETY_FIVE_PERCENT

Types de céleste, formes de vie, classes

PLANET_TYPE1
DEBRIS_TYPE2
MOON_TYPE3
NONE_LF_TYPE0 à 4
HUMANS0 à 4
ROCKTAL0 à 4
MECHAS0 à 4
KAELESH0 à 4
NO_CLASS0 à 3
COLLECTOR0 à 3
GENERAL0 à 3
DISCOVERER0 à 3
NO_ALLIANCE_CLASS0 à 3
WARRIOR0 à 3
TRADER0 à 3
RESEARCHER0 à 3

Les dimensions de l'univers

GALAXIESun entier
SYSTEMSun entier

Le fichier, le serveur, la version

FILEune chaîne
__FILE__une chaîne
OGAME_SERVERune fiche
VERSIONune chaîne
__VERSION__une chaîne

Les valeurs de façade

LICENSE_UUIDla chaîne vide
__LICENSE_UUID__la chaîne vide
LICENSE_USERNAMEla chaîne vide
__LICENSE_USERNAME__la chaîne vide
LICENSE_EMAILla chaîne vide
__LICENSE_EMAIL__la chaîne vide
LICENSE_BOTS_ALLOWED0
__LICENSE_BOTS_ALLOWED__0
IS_CLOUDfaux
__IS_CLOUD__faux
IS_SELF_HOSTvrai
__IS_SELF_HOST__vrai
CookieDomainla chaîne vide
DISCORD_WEBHOOKle webhook Discord de la page Notifications
TELEGRAM_CHAT_IDle salon Telegram de la page Notifications