### Log Tutorial Start Source: https://wiki.gdevelop.io/gdevelop5/extensions/wortal-sdk Logs the start of a tutorial, identifying it by name. ```APIDOC ## Log Tutorial Start ### Description Logs the start of a tutorial. ### Parameters #### Path Parameters - **Name of the tutorial** (String) - Required - The name of the tutorial. ``` -------------------------------- ### Start Game Source: https://wiki.gdevelop.io/gdevelop5/extensions/wortal-sdk Starts the game. This action has no configurable parameters. ```APIDOC ## Start Game ### Description Starts the game. This action does not require any parameters. ### Method N/A (Action in GDevelop) ### Endpoint N/A ### Parameters None ### Request Example None ### Response None ``` -------------------------------- ### Gameplay started Source: https://wiki.gdevelop.io/gdevelop5/extensions/poki-games-sdkhtml Inform Poki that the gameplay has started. This action has no parameters. ```APIDOC ## Gameplay started ### Description Inform Poki gameplay started. ### Method Call ### Endpoint PokiGamesSDKHtml::CallGameplayStart ### Parameters There are no parameters to set for this action. ``` -------------------------------- ### TAGS.md File Example Source: https://wiki.gdevelop.io/gdevelop5/community/contribute-to-the-assets-store/technical-specifications Example of how to list tags for assets in the TAGS.md file. Tags should be singular and separated by commas. ```text side view, pirate, ship, sea ``` -------------------------------- ### Install PeerJS Server Source: https://wiki.gdevelop.io/gdevelop5/all-features/p2p Installs the PeerJS server globally on your system. This is a prerequisite for running a custom broker server locally. ```bash npm install peer -g ``` -------------------------------- ### Install Cordova Globally Source: https://wiki.gdevelop.io/gdevelop5/publishing/android_and_ios_with_cordova Install the Cordova command-line tool globally on your system using npm. ```bash npm install -g cordova ``` -------------------------------- ### GamePlayStart Source: https://wiki.gdevelop.io/gdevelop5/extensions/wortal-sdk Tracks the start of a gameplay session. ```APIDOC ## GamePlayStart ### Description Tracks the start of a gameplay session. ### Method Asynchronous ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Parameters There are no parameters to set for this action. ### Response #### Success Response (Gameplay session started) #### Response Example (No specific response body mentioned) ``` -------------------------------- ### Install Dependencies and Build Project Source: https://wiki.gdevelop.io/gdevelop5/publishing/windows-macos-linux-with-electron Run this command in the exported game's directory to install project dependencies and build the Electron package. This is the primary command for preparing your game for distribution. ```bash yarn && yarn build ``` -------------------------------- ### Start PeerJS Server Source: https://wiki.gdevelop.io/gdevelop5/all-features/p2p Starts a local PeerJS broker server. You can specify a port number. This server is used by game instances to find and connect to each other. ```bash peerjs -p 9000 ``` -------------------------------- ### Example Project Checklist Source: https://wiki.gdevelop.io/gdevelop5/community/guide-for-submitting-an-example This checklist helps ensure all necessary requirements are met before submitting a game example to the GDevelop repository. It covers project naming, package names, event unfolding, author information, README file, licensing, and resource cleanup. ```markdown - [ ] My Game has a proper name in the game properties. - [ ] My Game package name begins with 'com.examples'. - [ ] My Game has all events unfolded. - [ ] I've added myself as the author in the game properties. - [ ] I've included a file called 'README.md' with a description in proper English, explaining what this example is doing. - [ ] I confirm that this game and all its resources can be integrated to this Github repository, distributed and MIT licensed. - [ ] I've cleaned unused resources in the project. ``` -------------------------------- ### GDevelop - Reproducing a Bug Example Source: https://wiki.gdevelop.io/gdevelop5/community/guide-to-reporting-a-bug Example steps to reproduce a bug within GDevelop's scene events. ```gherkin * Go to Scene events * Right click on an event * Click edit * The window should now be going crazy ``` -------------------------------- ### Install Fire Bullets Behavior Source: https://wiki.gdevelop.io/gdevelop5/tutorials/space-shooter/3-shoot-and-health Install the Fire Bullets behavior to enable shooting projectiles from an object. ```gdevelop Search for "Fire Bullets" and install it. ``` -------------------------------- ### Get catalog async Source: https://wiki.gdevelop.io/gdevelop5/extensions/wortal-sdk Gets the catalog of available products the player can purchase. This action is essential for implementing in-game stores or virtual economies. ```APIDOC ## Get catalog async ### Description Gets the catalog of available products the player can purchase. ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) - **catalog** (Array): An array of product objects available in the catalog. #### Response Example None ``` -------------------------------- ### Get entry point asynchronously Source: https://wiki.gdevelop.io/gdevelop5/extensions/wortal-sdk Get entry point that the game was launched from asynchronously. This can be used to understand how the user accessed the game. ```APIDOC ## Get entry point asynchronously ### Description Get entry point that the game was launched from asynchronously. ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) - **entryPoint** (String): The entry point from which the game was launched. #### Response Example None ``` -------------------------------- ### Start Listening Source: https://wiki.gdevelop.io/gdevelop5/extensions/voice-recognition Starts listening for speech input from the browser microphone. An optional language can be specified; otherwise, the browser's default language setting is used. ```APIDOC ## Start Listening ### Description Starts listening for speech input from the browser microphone. An optional language can be specified; otherwise, the browser's default language setting is used. ### Action Listen for speeches ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body * **Language** (string) - Optional - Defaults to the browser language setting. A list of supported language codes is available in the documentation. ``` -------------------------------- ### Get entry point data Source: https://wiki.gdevelop.io/gdevelop5/extensions/wortal-sdk Get any data object associated with the entry point that the game was launched from. This allows for passing context or parameters when launching the game. ```APIDOC ## Get entry point data ### Description Get any data object associated with the entry point that the game was launched from. ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) - **data** (Object): The data object associated with the entry point. #### Response Example None ``` -------------------------------- ### Example: Adding Damage Action to a Behavior Source: https://wiki.gdevelop.io/gdevelop5/behaviors/events-based-behaviors This example defines an action that can be used to add damage to an object. Actions allow changing the behavior's state. ```GDevelop Events For example, this function defines an action that can be used to add damage to the object: ```gdevelop-events // Action: Add damage to the object // Parameters: // damageAmount: Number (the amount of damage to add) // // Example usage in scene events: // "MyBehavior" -> "Add damage" (damageAmount: 10) // Inside the behavior's events: // Add a condition to check if the object has a 'health' property // If health <= damageAmount // Set health to 0 // Else // Set health to health - damageAmount ``` ``` -------------------------------- ### Start a query Source: https://wiki.gdevelop.io/gdevelop5/all-features/firebase/reference Start a query on a collection. A query allows to get a filtered and ordered list of documents in a collection. ```APIDOC ## Start a query ### Description Start a query on a collection. A query allows to get a filtered and ordered list of documents in a collection. ### Parameters #### Path Parameters - None #### Query Parameters - None #### Request Body - None ### Parameters * Parameter 0 (String): Query name * Parameter 1 (String): Collection ``` -------------------------------- ### Build Portable for Windows and AppImage for Linux Source: https://wiki.gdevelop.io/gdevelop5/publishing/windows-macos-linux-with-electron This example demonstrates building a portable executable for Windows and an AppImage for Linux. It shows how to specify different packaging formats for multiple platforms. ```bash yarn build -w portable -l AppImage ``` -------------------------------- ### Steamworks::InstalledApplicationPath Source: https://wiki.gdevelop.io/gdevelop5/all-features/steamworks/reference Gets the file path to an installed Steam application. ```APIDOC ## Steamworks::InstalledApplicationPath ### Description Gets the path to an installed Steam application. ### Parameters #### Path Parameters - **The Steam App ID of the application** (_String_) ### Returns - The file path to the application (String). ``` -------------------------------- ### Get Substring from Text Source: https://wiki.gdevelop.io/gdevelop5/all-features/string-instructions Extracts a portion of a string starting from a specified position and with a given length. Define the start index and the desired length for the substring. ```GDevelop Expressions StrSubstr(MyText, 5, 10) ``` -------------------------------- ### Initialize a shop Source: https://wiki.gdevelop.io/gdevelop5/all-features/shopify/reference Initialize a shop with your credentials. Call this action first, and then use the shop name in the other actions to interact with products. ```APIDOC ## Initialize a shop ### Description Initialize a shop with your credentials. Call this action first, and then use the shop name in the other actions to interact with products. ### Parameters #### Path Parameters * None #### Query Parameters * None #### Request Body * **Shop name** (String) - Required - The name of the shop. * **Domain** (String) - Required - The shop's domain (e.g., xxx.myshopify.com). * **App Id** (String) - Required - The application ID. * **Access Token** (String) - Required - The access token for authentication. ``` -------------------------------- ### Get Text Length Source: https://wiki.gdevelop.io/gdevelop5/all-features/string-instructions Returns the total number of characters in a string. Note that character counting starts from 1 for this expression. ```GDevelop Expressions Length(MyText) ``` -------------------------------- ### Get Leaderboard Entries Async Source: https://wiki.gdevelop.io/gdevelop5/extensions/wortal-sdk Fetches a specified number of leaderboard entries starting from a given offset. It returns an array of Leaderboard structures. ```APIDOC ## Get Leaderboard Entries Async ### Description Fetches a specified number of leaderboard entries starting from a given offset. It returns an array of Leaderboard structures. ### Method Not applicable (SDK Action) ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Parameters * Parameter 2 (Number): The number of entries to attempt to fetch from the leaderboard. * Parameter 3 (Number): The offset from the set of ordered connected player score entries to fetch from. * Parameter 4 (Any variable): Array of Leaderboard structure result variable callback. ### Request Example None ### Response #### Success Response * Leaderboard entries (Array of Leaderboard structures) ### Response Example None ``` -------------------------------- ### Start recording Source: https://wiki.gdevelop.io/gdevelop5/extensions/record Initiates the game recording. This action has no configurable parameters. ```APIDOC ## Start recording ### Description Starts the game recording. ### Method N/A (Action) ### Endpoint N/A (Action) ### Parameters There are no parameters to set for this action. ``` -------------------------------- ### Ellipse Movement Behavior Setup Source: https://wiki.gdevelop.io/gdevelop5/tutorials/how-to-move-objects Install and configure the Ellipse Movement behavior to make objects move in circular or elliptical paths. Useful for continuous, patterned motion. ```GDevelop Events Add 'Ellipse Movement' behavior to Enemy ``` -------------------------------- ### Using a Text Parameter in a Function Source: https://wiki.gdevelop.io/gdevelop5/events/functions This example demonstrates how to use a text parameter to get a scene name and then use it in an action to change the scene. This is useful for creating dynamic scene transitions. ```GDevelop Events Change the scene to "_PARAM1_" ``` -------------------------------- ### Get User's Preferred Language Source: https://wiki.gdevelop.io/gdevelop5/extensions/language Returns a string representing the preferred language of the user, including country codes if specified. Example formats include "en", "en-US", "en-GB", "es", "zh-CN". ```gdevelop Language::Language() ``` -------------------------------- ### Build for All Platforms (Windows, macOS, Linux) Source: https://wiki.gdevelop.io/gdevelop5/publishing/windows-macos-linux-with-electron Use the `-wlm` flags to build your game for Windows, Linux, and macOS in a single command. All platforms will share the same packaging format. ```bash yarn build -wlm ``` -------------------------------- ### Get token Source: https://wiki.gdevelop.io/gdevelop5/extensions/poki-games-sdkhtml Get the current Poki token and store it in a variable. ```APIDOC ## Get token ### Description Get the current Poki token and store it in a variable. ### Method Call ### Endpoint PokiGamesSDKHtml::GetToken ### Parameters #### Path Parameters - **Parameter 1** (Any variable) - Required - Variable where the token will be stored ``` -------------------------------- ### Log Level Start Source: https://wiki.gdevelop.io/gdevelop5/extensions/wortal-sdk Logs the start of a level, identifying the level by its name. ```APIDOC ## Log Level Start ### Description Logs the start of a level, identifying the level by its name. ### Parameters #### Path Parameters - **Level** (String) - Required - The name of the level. ``` -------------------------------- ### Configure and Show Banner Ad Source: https://wiki.gdevelop.io/gdevelop5/all-features/admob Set up and display a banner ad. This action configures the banner and then shows it, typically used for ads displayed during gameplay. ```GDevelop Events Add actions to your events: AdMob -> Configure the banner AdMob -> Show the banner ``` -------------------------------- ### Example of a Command with a Parameter Source: https://wiki.gdevelop.io/gdevelop5/all-features/dialogue-tree Demonstrates a custom command 'found' with a parameter 'weird rock'. ```yarn < found weird rock > ``` -------------------------------- ### Gameplay started Source: https://wiki.gdevelop.io/gdevelop5/extensions/crazy-games-ad-api Notifies CrazyGames that the gameplay has started. This action has no user-configurable parameters. ```APIDOC ## Gameplay started ### Description Let CrazyGames know gameplay started. ### Method N/A (Action) ### Endpoint N/A ### Parameters There are no user-configurable parameters for this action. ``` -------------------------------- ### Start a query from another query Source: https://wiki.gdevelop.io/gdevelop5/all-features/firebase/reference Start a query with the same collection and filters as another one. ```APIDOC ## Start a query from another query ### Description Start a query with the same collection and filters as another one. ### Parameters #### Path Parameters - None #### Query Parameters - None #### Request Body - None ### Parameters * Parameter 0 (String): Query name * Parameter 1 (String): Source query name ``` -------------------------------- ### Example: Calling the "SnapToGrid" Function Source: https://wiki.gdevelop.io/gdevelop5/events/functions/replace-external-events Demonstrates how to call the previously defined 'SnapToGrid' function in GDevelop events, passing a specific object to be snapped to the grid. This showcases the ease of use for the created function. ```gdevelop Action: Call function "SnapToGrid" with parameter "MyObject" ``` -------------------------------- ### Hide Start Text When Game Starts Source: https://wiki.gdevelop.io/gdevelop5/tutorials/endless-runner This action hides the 'Press Up to Start' text once the game has begun. It's used to manage on-screen prompts based on the game's current state. ```GDevelop Events Hide "Press Up to Start" text ``` -------------------------------- ### Example: Snapping Any Object to a Virtual Grid (Function) Source: https://wiki.gdevelop.io/gdevelop5/events/functions/replace-external-events This snippet shows how to define a GDevelop function that accepts an object as a parameter to snap it to a virtual grid. This approach is more generic and reusable than external events. ```gdevelop Function "SnapToGrid" with parameter "ObjectToSnap" (type: object) Events: - Action: Set position of "ObjectToSnap" to ( (Variable(gridX) * 32) + 16 ), ( (Variable(gridY) * 32) + 16 ) ``` -------------------------------- ### Install Health Behavior Source: https://wiki.gdevelop.io/gdevelop5/tutorials/space-shooter/3-shoot-and-health Install the Health behavior to add health management capabilities to an object. ```gdevelop Search for "Health" and install it. ``` -------------------------------- ### Example Asset Pack Folder Structure Source: https://wiki.gdevelop.io/gdevelop5/community/contribute-to-the-assets-store/technical-specifications This illustrates the standard directory structure for a GDevelop asset pack, including metadata, preview resources, and categorized asset folders. ```tree French food │ ├── pack.json << Asset pack metadata │ ├── previewImages << Sub folder with public resources │ ├── IGNORED.md │ ├── thumbnail.png << png only │ ├── preview1.png << png only │ └── preview2.png << png only │ ├── previewSounds << Sub folder with public resources │ ├── IGNORED.md │ ├── preview1.aac << aac, wav, ogg or mp3 │ └── preview2.wav << aac, wav, ogg or mp3 │ │ ├── Character │ ├── Enemy 1_Attack Bottom_METADATA.png │ ├── Enemy 1_Attack Bottom_1.png │ ├── Enemy 1_Attack Bottom_2.png │ ├── Enemy 1_Attack Bottom_3.png │ ├── Enemy 1_Attack Bottom_4.png │ ├── Enemy 1_Attack Top_METADATA.png │ ├── Enemy 1_Attack Top_1.png │ ├── Enemy 1_Attack Top_2.png │ ├── Enemy 1_Attack Top_3.png │ ├── Enemy 1_Attack Top_4.png │ ├── Enemy 2_Attack Bottom_METADATA.png │ ├── Enemy 2_Attack Bottom_1.png │ ├── Enemy 2_Attack Bottom_2.png │ ├── Enemy 2_Attack Bottom_3.png │ ├── Enemy 2_Attack Bottom_4.png │ ├── Enemy 2_Attack Top_METADATA.png │ ├── Enemy 2_Attack Top_1.png │ ├── Enemy 2_Attack Top_2.png │ ├── Enemy 2_Attack Top_3.png │ └── Enemy 2_Attack Top_4.png │ ├── Props │ ├── 9patch_French Table_all_128.png │ ├── 9patch_French Table_center.png │ ├── 9patch_French Table_east.png │ ├── 9patch_French Table_north.png │ ├── 9patch_French Table_northeast.png │ ├── 9patch_French Table_northwest.png │ ├── 9patch_French Table_south.png │ ├── 9patch_French Table_southeast.png │ ├── 9patch_French Table_southwest.png │ ├── 9patch_French Table_west.png │ ├── quiche_resting_1.png │ └── quiche_resting_2.png │ ├── Audio │ └── cooking.aac │ ├── Font │ └── bonne maman.ttf │ └── Splash << Sub folder with a partial asset ├── IGNORED_FOR_IMAGE_ASSETS.md ├── SauceSplashing.asset.json ├── SauceSplashing.png └── SauceSplashing.preview.png ``` -------------------------------- ### When recording has started Source: https://wiki.gdevelop.io/gdevelop5/extensions/record Checks if the recording process has just started. This is useful for initiating recording-related actions or UI updates. ```APIDOC ## When recording has started ### Description Check if recording has just started. ### Parameters There are no parameters to set for this condition. ``` -------------------------------- ### Example: Positioning Objects on a Virtual Grid (External Event) Source: https://wiki.gdevelop.io/gdevelop5/events/functions/replace-external-events This code snippet demonstrates a basic external event used to position objects named 'Tile' on a virtual grid. It highlights the limitation of hardcoded object names, making it less reusable. ```gdevelop Events: - Condition: Pick all objects of type "Tile" - Action: Set position of "Tile" to ( (Variable(gridX) * 32) + 16 ), ( (Variable(gridY) * 32) + 16 ) ``` -------------------------------- ### InitSDK Source: https://wiki.gdevelop.io/gdevelop5/extensions/ygame-sdk Initializes the Yandex Games SDK with specified display and orientation settings. ```APIDOC ## InitSDK ### Description Initializes the Yandex Games SDK, configuring fullscreen mode, screen orientation, and screen locking. ### Method Action ### Parameters #### Other Parameters - **Fullscreen** (Yes or No) - Required - Enables or disables fullscreen mode. - **Screen orientation** (string) - Required - Sets the screen orientation. Possible values: "portrait", "landscape". - **Lock screen** (Yes or No) - Required - Locks the screen orientation. ``` -------------------------------- ### Make Purchase Async Source: https://wiki.gdevelop.io/gdevelop5/extensions/wortal-sdk Initiates an asynchronous purchase for a specified product, with a callback for the purchase result. ```APIDOC ## Make Purchase Async ### Description Make purchase for specified product. ### Parameters #### Path Parameters - **ID of product** (String) - Required - The ID of the product to purchase. - **Purchase result structure variable callback** (Any variable) - Required - A callback variable to handle the purchase result. ``` -------------------------------- ### Append Parameter to Storage Data Get Request Source: https://wiki.gdevelop.io/gdevelop5/extensions/playgama-bridge Appends a key to a storage data get request. Requires a key. ```APIDOC ## Append Parameter to Storage Data Get Request ### Description Appends a key to a storage data get request. ### Method Not specified (internal GDevelop action) ### Endpoint Not specified (internal GDevelop action) ### Parameters #### Path Parameters - **Key** (string) - Required - The key to append. ### Request Example N/A ### Response N/A ``` -------------------------------- ### InitPayments Source: https://wiki.gdevelop.io/gdevelop5/extensions/ygame-sdk Initializes the in-game payment system. ```APIDOC ## InitPayments ### Description Initializes the Yandex Games payment system, enabling in-game purchases. ### Method Action ### Parameters There are no parameters to set for this action. ``` -------------------------------- ### Get user Source: https://wiki.gdevelop.io/gdevelop5/extensions/poki-games-sdkhtml Get the current Poki user and store it in a structure variable. The result structure contains `username` and `avatarUrl`. ```APIDOC ## Get user ### Description Get the current Poki user and store it in a structure variable. The result structure contains `username` and `avatarUrl`. ### Method Call ### Endpoint PokiGamesSDKHtml::GetUser ### Parameters #### Path Parameters - **Parameter 1** (Any variable) - Required - Structure variable where the user will be stored ```