Wrapper für die Game Jolt API, die über HTTP-Anfragen ausgeführt wird. Es enthält alle Game Jolt API-Endpunkte und zielt darauf ab, die Verwendung dort zu vereinfachen, wo es möglich ist. Kompatibel mit Godot 4.x. Informationen zur Godot 3.x-Version finden Sie in diesem Zweig.
Anwendungsbeispiele finden Sie in der folgenden Dokumentation. Es gibt auch eine Beispielszene in addons/gamejolt/example
die alle Endpunkte und Parameter auf einer grafischen Oberfläche enthält.
Hinweis: Jeder Parameter, dem ein ?
folgt ist optional. Beispiel: sessions_ping(status?) -> GameJolt
.
Project Settings > Plugins
Project Settings > General > Game Jolt > Config > Global
ausführen zu können.Project Settings > General > Game Jolt > Config > Debug
einen Standardbenutzernamen und ein Standardtoken festlegen. Nach dieser Einrichtung können Sie die API-Anfragen ausführen, indem Sie die folgenden Methoden für den Singleton GameJolt
in Ihrem Code verwenden.
Jede Game Jolt-API-Methode gibt ein Signal aus, nachdem eine Anfrage abgeschlossen wurde, unabhängig davon, ob sie erfolgreich war oder nicht. Sie können bestimmte Signale verbinden, um Antworten auf Methodenrückrufe zu erfassen:
func _ready () -> void :
GameJolt . time_completed . connect ( _on_GameJolt_time_completed )
GameJolt . time ()
func _on_GameJolt_time_completed ( result : Dictionary ) -> void :
# Do something with the request result...
Oder Sie können das Signalergebnis in einer Variablen await
:
func _onButtonTime_pressed () -> void :
GameJolt . time ()
var result : Dictionary = await GameJolt . time_completed
# Do something with the request result...
Hinweis: Alle Signale geben eine response: Dictionary
.
Allgemein
user_name_changed
user_token_changed
game_id_changed
private_key_changed
Benutzer
users_fetch_completed(response: Dictionary)
users_auth_completed(response: Dictionary)
Sitzungen
sessions_open_completed(response: Dictionary)
sessions_ping_completed(response: Dictionary)
sessions_check_completed(response: Dictionary)
sessions_close_completed(response: Dictionary)
Partituren
scores_fetch_completed(response: Dictionary)
scores_tables_completed(response: Dictionary)
scores_add_completed(response: Dictionary)
scores_get_rank_completed(response: Dictionary)
Trophäen
trophies_fetch_completed(response: Dictionary)
trophies_add_achieved_completed(response: Dictionary)
trophies_remove_achieved_completed(response: Dictionary)
Datenspeicherung
data_store_set_completed(response: Dictionary)
data_store_update_completed(response: Dictionary)
data_store_remove_completed(response: Dictionary)
data_store_fetch_completed(response: Dictionary)
data_store_get_keys_completed(response: Dictionary)
Freunde
friends_completed(response: Dictionary)
Zeit
time_completed(response: Dictionary)
Batch-Anrufe
batch_completed(response: Dictionary)
Allgemeine Methoden zum lokalen Konfigurieren GameJolt
Singletons.
Legen Sie den Benutzernamen für die Authentifizierung und andere Benutzerbereichsaufgaben fest. Gibt user_name_changed
aus.
value: String
-> Der Benutzername. Aktuellen Benutzernamen abrufen.
Legen Sie das Benutzertoken für die Authentifizierung und andere Benutzerbereichsaufgaben fest. Gibt user_token_changed
aus.
value: String
-> Das Benutzerspiel-Token. Holen Sie sich den Spieltoken des aktuellen Benutzers.
Legen Sie die für alle Aufgaben benötigte Spiel-ID fest. Gibt game_id_changed
aus.
value: String
-> Die Spiel-ID aus Ihrem Game Jolt-Projekt. Holen Sie sich die aktuelle Spiel-ID.
Legen Sie den für alle Aufgaben erforderlichen privaten Schlüssel fest. Gibt private_key_changed
aus.
value: String
-> Der private Schlüssel des Spiels aus Ihrem Game Jolt-Projekt. Holen Sie sich den aktuellen privaten Schlüssel des Spiels.
Gibt die Daten eines Benutzers zurück. Gibt users_fetch_completed
aus.
user_name: String
(optional) -> Der Benutzername des Benutzers, dessen Daten Sie abrufen möchten.user_ids: Array[String|int]
(optional) -> Die IDs der Benutzer, deren Daten Sie abrufen möchten. Hinweis: Die Parameter user_name
und user_ids
schließen sich gegenseitig aus. Sie sollten nur einen oder keinen davon verwenden. Wenn keine angegeben wurden, wird der aktuelle Benutzername abgerufen, der im GameJolt
Singleton festgelegt ist.
Authentifiziert die Informationen des Benutzers. Dies sollte erfolgen, bevor Sie Anrufe für den Benutzer tätigen, um sicherzustellen, dass die Anmeldeinformationen des Benutzers (Benutzername und Token) gültig sind. Damit es erfolgreich ist, müssen der Benutzername und das Token auf GameJolt
Singleton festgelegt werden. Gibt users_auth_completed
aus.
Öffnet eine Spielsitzung für einen bestimmten Benutzer und ermöglicht es Ihnen, Game Jolt mitzuteilen, dass ein Benutzer Ihr Spiel spielt. Sie müssen die Sitzung anpingen, um sie aktiv zu halten, und Sie müssen sie schließen, wenn Sie damit fertig sind. Gibt sessions_open_completed
aus.
Hinweise:
GameJolt
Singleton. Pingt eine offene Sitzung an, um dem System mitzuteilen, dass sie noch aktiv ist. Wenn die Sitzung nicht innerhalb von 120 Sekunden angepingt wurde, schließt das System die Sitzung und Sie müssen eine andere öffnen. Es wird empfohlen, etwa alle 30 Sekunden einen Ping durchzuführen, um zu verhindern, dass das System Ihre Sitzung löscht. Sie können dem System auch mitteilen, ob sich der Spieler in Ihrem Spiel im "active"
oder "idle"
Zustand befindet. Gibt sessions_ping_completed
aus.
status: String
(optional) -> Setzt den Status der Sitzung entweder auf "active"
oder "idle"
. Hinweis: Erfordert die Festlegung von Benutzername und Token im GameJolt
Singleton.
Überprüft, ob für den Benutzer eine offene Sitzung vorhanden ist. Kann verwendet werden, um zu sehen, ob ein bestimmtes Benutzerkonto im Spiel aktiv ist. Gibt sessions_check_completed
aus.
Hinweise:
"success"
false
“ zurück, wenn keine offene Sitzung vorhanden ist. Dieses Verhalten unterscheidet sich von anderen Endpunkten, die dieses Feld verwenden, um einen Fehlerstatus anzuzeigen.GameJolt
Singleton. Schließt die aktive Sitzung. Gibt sessions_close_completed
aus.
Hinweis: Erfordert die Festlegung von Benutzername und Token im GameJolt
Singleton.
Gibt eine Liste der Ergebnisse entweder für einen Benutzer oder global für ein Spiel zurück. Gibt scores_fetch_completed
aus.
limit: String|int
(optional) -> Die Anzahl der Ergebnisse, die Sie zurückgeben möchten.table_id: String|int
(optional) -> Die ID der Score-Tabelle.guest: String
(optional) -> Der Name eines Gastes.better_than: String|int
(optional) -> Nur Scores abrufen, die besser sind als dieser Score-Sortierwert.worse_than: String|int
(optional) -> Nur Scores abrufen, die schlechter sind als dieser Score-Sortierwert.this_user: bool
(optional) -> Wenn true
, werden nur die Ergebnisse des aktuellen Benutzers abgerufen. Andernfalls rufen Sie die Ergebnisse aller Benutzer ab.Hinweise:
GameJolt
Singleton festgelegt werden, wenn this_user
true
ist.limit
beträgt 10
Punkte. Sie können maximal 100
Punkte abrufen.table_id
leer bleibt, werden die Ergebnisse aus der primären Bewertungstabelle zurückgegeben.this_user
nur als true
, wenn Sie Bewertungen nur für den im Klassenkonstruktor festgelegten Benutzer abrufen möchten. Lassen Sie this_user
auf true
und guest
“ auf ""
, um alle Ergebnisse abzurufen.guest
können Sie Punkte nach einem bestimmten Gastnamen abrufen. Übergeben Sie nur entweder this_user
als true
oder den guest
(oder keinen), niemals beides. Gibt eine Liste der Highscore-Tabellen für ein Spiel zurück. Gibt scores_tables_completed
aus.
Fügt eine Punktzahl für einen Benutzer oder Gast hinzu. Gibt scores_add_completed
aus.
score: String
-> Dies ist ein String-Wert, der mit dem Score verknüpft ist. Beispiel: "500 Points"
.sort: String|int
-> Dies ist ein numerischer Sortierwert, der der Punktzahl zugeordnet ist. Alle Sortierungen basieren auf dieser Nummer. Beispiel: 500
.table_id: String|int
(optional) -> Die ID der Bewertungstabelle, an die gesendet werden soll.guest: String
(optional) -> Der Name des Gastes. Überschreibt den Benutzernamen des GameJolt
Singletons.extra_data: String|int|Dictionary|Array
(optional) -> Wenn Sie zusätzliche Daten als String speichern möchten, können Sie diese Variable verwenden.Hinweise:
GameJolt
Singleton festlegen und guest
leer lassen. Wenn Sie für einen Gast speichern, müssen Sie den guest
übergeben.extra_data
-Wert ist nur über die API und das Dashboard Ihres Spiels abrufbar. Es wird Benutzern auf der Website niemals öffentlich angezeigt. Wenn mit dem Spielstand weitere Daten wie gespielte Zeit, gesammelte Münzen usw. verknüpft sind, sollten Sie diese unbedingt angeben. Dies ist hilfreich, wenn Sie glauben, dass ein Spieler unrechtmäßig einen Highscore erreicht hat.table_id
leer bleibt, wird die Punktzahl an die primäre Highscore-Tabelle übermittelt. Gibt den Rang einer bestimmten Punktzahl in einer Punktetabelle zurück. Gibt scores_get_rank_completed
aus.
sort: String|int
-> Dies ist ein numerischer Sortierwert, der durch einen Rang in der Punktetabelle dargestellt wird.table_id: String|int
(optional) -> Die ID der Punktetabelle, aus der Sie den Rang erhalten möchten.Hinweise:
table_id
leer bleibt, werden die Ränge aus der primären Highscore-Tabelle zurückgegeben. Gibt je nach den übergebenen Parametern eine oder mehrere Trophäen zurück. Gibt trophies_fetch_completed
aus.
sort: bool|null
(optional) -> Übergeben Sie true
, um nur die erreichten Trophäen für einen Benutzer zurückzugeben. Übergeben Sie false
um nur Trophäen zurückzugeben, die der Benutzer nicht erreicht hat. Übergeben Sie null
um alle Trophäen abzurufen.trophy_ids: Array[String|int]
(optional) -> Wenn Sie eine oder mehrere Trophäen zurückgeben möchten, übergeben Sie hier Trophäen-IDs, wenn Sie eine Teilmenge aller Trophäen zurückgeben möchten.Hinweise:
trophy_ids
wird der achieved
Parameter ignoriert, wenn er übergeben wird.GameJolt
Singleton. Legt eine Trophäe fest, die für einen bestimmten Benutzer erreicht wurde. Gibt trophies_add_achieved_completed
aus.
trophy_id: String|int
-> Die ID der Trophäe, die für den Benutzer hinzugefügt werden soll. Hinweis: Erfordert die Festlegung von Benutzername und Token im GameJolt
Singleton.
Entfernen Sie eine zuvor erreichte Trophäe für einen bestimmten Benutzer. Gibt trophies_remove_achieved_completed
aus.
trophy_id: String|int
-> Die ID der Trophäe, die vom Benutzer entfernt werden soll. Hinweis: Erfordert die Festlegung von Benutzername und Token im GameJolt
Singleton.
Legt Daten im Datenspeicher fest. Gibt data_store_set_completed
aus.
key: String
-> Der Schlüssel des Datenelements, das Sie festlegen möchten.data: String|Array|Dictionary
-> Die Daten, die Sie festlegen möchten.global_data: bool
(optional) -> Wenn auf true
gesetzt, werden der in GameJolt
festgelegte Benutzername und das Token ignoriert und globale Daten anstelle von Benutzerdaten verarbeitet.Hinweise:
global_data
false
ist, müssen Benutzername und Token für GameJolt
Singleton festgelegt werden. Aktualisiert Daten im Datenspeicher. Gibt data_store_update_completed
aus.
key: String
-> Der Schlüssel des Datenelements, das Sie aktualisieren möchten.operation: String
-> Die Operation, die Sie ausführen möchten.value: String|int
-> Der Wert, den Sie auf das Datenspeicherelement anwenden möchten.global_data: bool
(optional) -> Wenn auf true
gesetzt, werden der in GameJolt
festgelegte Benutzername und das Token ignoriert und globale Daten anstelle von Benutzerdaten verarbeitet.Hinweise:
operation
: "add"
, "subtract"
, "multiply"
, "divide"
, "append"
und "prepend"
.global_data
false
ist, müssen Benutzername und Token für GameJolt
Singleton festgelegt werden. Entfernt Daten aus dem Datenspeicher. Gibt data_store_remove_completed
aus.
key: String
-> Der Schlüssel des Datenelements, das Sie entfernen möchten.global_data: bool
(optional) -> Wenn auf true
gesetzt, werden der in GameJolt
festgelegte Benutzername und das Token ignoriert und globale Daten anstelle von Benutzerdaten verarbeitet.Hinweise:
global_data
false
ist, müssen Benutzername und Token für GameJolt
Singleton festgelegt werden. Gibt Daten aus dem Datenspeicher zurück. Gibt data_store_fetch_completed
aus.
key: String
-> Der Schlüssel des Datenelements, das Sie abrufen möchten.global_data: bool
(optional) -> Wenn auf true
gesetzt, werden der in GameJolt
festgelegte Benutzername und das Token ignoriert und globale Daten anstelle von Benutzerdaten verarbeitet.Hinweise:
global_data
false
ist, müssen Benutzername und Token für GameJolt
Singleton festgelegt werden. Gibt entweder alle Schlüssel im globalen Datenspeicher des Spiels oder alle Schlüssel im Datenspeicher eines Benutzers zurück. Gibt data_store_get_keys_completed
aus.
pattern: String
(optional) -> Das Muster, das auf die Schlüsselnamen im Datenspeicher angewendet werden soll.global_data: bool
(optional) -> Wenn auf true
gesetzt, werden der in GameJolt
festgelegte Benutzername und das Token ignoriert und globale Daten anstelle von Benutzerdaten verarbeitet.Hinweise:
"*"
."key"
-Werte zurück. Der Rückgabewert "key"
kann mehrfach vorkommen.global_data
false
ist, müssen Benutzername und Token für GameJolt
Singleton festgelegt werden. Gibt die Liste der Freunde eines Benutzers zurück. Gibt friends_completed
aus.
Hinweis: Erfordert die Festlegung von Benutzername und Token im GameJolt
Singleton.
Gibt die Zeit des Game Jolt-Servers zurück. Gibt time_completed
aus.
Eine Batch-Anfrage ist eine Sammlung von Unteranfragen, die es Entwicklern ermöglicht, mehrere API-Aufrufe mit einer HTTP-Anfrage zu senden. Um Batch-Aufrufe in Ihrem Code zu verwenden, platzieren Sie Ihre Anforderungsaufrufe zwischen „ batch_begin
und batch_end
. Verwenden Sie Ihre Methoden beispielsweise in der folgenden Reihenfolge:
func _onButtonBatch_pressed () -> void :
# Begin to gather batch requests
GameJolt . batch_begin ()
# Add the time request to the batch
GameJolt . time ()
# Add the scores_tables request to the batch
GameJolt . scores_tables ()
# Stop gathering batch requests
GameJolt . batch_end ()
# Perform the batch call with the two requests above (time and score_tables)
GameJolt . batch ()
var result : Dictionary = await GameJolt . batch_completed
Führen Sie die Batch-Anfrage aus, nachdem Sie die Anfragen mit batch_begin
und batch_end
erfasst haben. Gibt batch_completed
“ aus.
parallel: bool
(optional) -> Standardmäßig wird jede Unteranfrage auf den Servern nacheinander verarbeitet. Wenn dies auf true
gesetzt ist, werden alle Unteranfragen gleichzeitig verarbeitet, ohne dass auf den Abschluss der vorherigen Unteranfrage gewartet werden muss, bevor die nächste gestartet wird.break_on_error: bool
(optional) -> Wenn dies auf true
gesetzt ist, führt ein Fehler einer Unteranforderung dazu, dass der gesamte Batch die Verarbeitung nachfolgender Unteranforderungen stoppt und bei Erfolg den Wert false
zurückgibt.Hinweise:
parallel
und break_on_error
schließen sich gegenseitig aus und können nicht in derselben Anfrage verwendet werden. Beginnt mit dem Sammeln von Batch-Anfragen. Methoden geben nach diesem Aufruf keine Antworten mehr zurück. Rufen Sie batch_end
auf, um den Batch-Anforderungserfassungsprozess abzuschließen.
Stoppt das Sammeln von Batch-Anfragen. Methoden werden nach diesem Aufruf erneut Antworten zurückgeben. Muss nach batch_begin
verwendet werden.