Plugins

  • Runtime Ogg Vorbis GDExtension
    4.1
    v1.0Tools

    This lightweight GDExtension adds static functions for loading Ogg Vorbis files into an immediately usable AudioStreamOggVorbis at runtime, without requiring the files to be imported using Godot Editor first. You may load files by path, or directly from a PackedByteArray buffer in memory, which could for example be used with ZIPReader to play music out of a zip package. Binaries for Windows, Mac, and Linux are provided. Please see README.md for usage details.

    By: JTE
  • Godot Animation Reverser
    3.4
    v1.0Tools

    Reverse any animation in your project (Creating a new reversed animation)

    By: tavurth
  • in-app purchases using cryptocurrencies
    4.3
    v3Projects

    Due to various restrictive laws or sanctions, financial exchanges are not available in a free and equal way for everyone in the world. Still, cryptocurrencies do not have any geographical limitations, and they are not limited to anyone. App stores usually follow those rules and sanctions, and for that reason, some developers cannot sell their products. However, those app stores also deduct a significant percentage of the sales as commissions and taxes from the income of developers! However, making in-app purchases using cryptocurrencies is possible to prevent that. In fact, with this method, the need for banks and app stores is eliminated, and as a result, no one will be under legal restrictions or sanctions, and the entire income will directly go to the developers, and they will not need to pay fees and taxes. How the program works: The programmer puts the price of the program based on dollars in his program, and then the program shows the user the price of the program according to the price of the selected digital currency every time it is executed. It is possible to determine the price by using one of the cryptocurrency price announcement sites by raw source code. Then, the user must deposit the desired price in that cryptocurrency to the specified account address within the time limit. Each money deposit through cryptocurrencies has a payment ID(Transaction Hash ID); The user must provide that payment ID to the app to validate it; if it is validated, the purchase will be accepted. Various cryptocurrency transaction tracking sites can be used to confirm the payment. Cryptocurrencies are free for everyone to use them. Websites announcing the price of cryptocurrencies are also free for everyone to access. Websites tracking transactions are also accessible freely. As a result, programmers don't need middlemen paying them for these financial affairs and selling their products. There is no law or sanction against this method of earning money; only accessing the Internet is enough. For those cases where the price announcement site is down, a default price list has been placed on this GitHub site to be used. These default prices are in their folder (default prices) on this site. Key information is updated through a special file (key_data.txt) on this GitHub site so that possible problems can be solved quickly in the future and there is no need to produce a new program and download it by the customer.

    By: bdshahab
  • D-Bus Nodes
    4.2
    vv1.0.1Misc

    Use D-Bus for IPC on Linux with Godot. This GDExtension adds simple nodes to use D-Bus. The DBusServerNode allows the definition of a DBusServer just through the property panel without having to write a single line of code. In your code you can then attach callbacks to the specified methods which will automatically be called if a client sends a message to the server. The DBusClientNode lets you specify one specific interface to interact with and make simple requests to. Both nodes abstract D-Bus specifiers away and let you just pass the basic Godot Variant Types. Open the demo for a full example.

    By: Arlo Phoenix
  • Large World Coordinates Demo
    4.2
    v4.2-31d1c0cDemos

    This project showcases optional support for double-precision rendering and physics in action. When using a *single-precision* build, precision errors can be noticeable as soon as you're more than a few thousand units away from the world origin. When using a *double-precision* build, meshes will remain stable even when very far away from the world origin (billions of units away or more). See the Large world coordinates documentation for more information: https://docs.godotengine.org/en/latest/tutorials/physics/large_world_coordinates.html WARNING: Official Godot builds do *not* have double-precision support enabled for performance reasons. You need to compile a custom engine build to use double precision support. Languages: GDScript Renderer: Mobile

    By: Godot Engine
  • Audio Device Changer Demo
    4.2
    v4.2-31d1c0cDemos

    This is a demo showing how the audio output device can be changed from Godot. How it works: It uses the `set_device()` method in the AudioServer singleton to change the audio device. The list of devices is populated using `get_device_list()`. Language: GDScript Renderer: Compatibility

    By: Godot Engine
  • WebSocket Minimal Demo
    4.2
    v4.2-31d1c0cDemos

    This is a minimal sample of connecting two peers to each other using WebSockets. Language: GDScript Renderer: Compatibility

    By: Godot Engine
  • BitmapTextureFont
    3.4
    v1.02D Tools

    A simple Godot plugin to create Bitmap Fonts from sprite sheets! ( Tested with Godot 3.4.2 ) Feel free to use in any projects either personal or commercial, but please keep the License and credit wherever possible! Thanks! Usage: 1. Install the plugin to your project by: - Downloading from AssetLib - Installing from .zip - Cloning the repo 2. Create a new Resource and look for "BitmapTextureFont" 3. Add your sprite sheet to the "Texture" section 4. Type out the characters as seen on the sheet from right to left into the "Character Map" section - Ensure that each character is present only once in the character map! 5. Specify the width and height of the cells in "Size" section 6. Optionally set if the font should be uniform or kerned with the "Monospace" section 7. Optionally set if the font should be uniform or kerned with the "Monospace" section 8. Optionally set custom character positions and dimensions in the "Custom Characters" section Setting up Custom Characters: "Custom Characters" can be set to specify the position and dimensions of character from the sprite sheet manually! 1. Expand the "Custom Characters" array for however many characters you wish to modify 2. Create a Dictionary for each entry in the array 3. Within each Dictionary, add the following key-value pairs: - Key: "Unicode" (String) / Value: int [ Integer value of custom character in Unicode ] - Key: "Position" (String) / Value: Vector2 [ Starting position in pixels of sprite sheet ] - Key: "Size" (String) / Value: Vector2 [ Size of rectangle from starting position ] Tips: * If things aren't looking correct with your font: - Check your sprite sheet to ensure that the characters are evenly spaced and fit uniformly within cells - Check your sprite sheet for any repeating characters ( That includes whitespace! ) - Check your settings and make sure the "Character Map" is typed out correctly as shown on the sprite sheet

    By: DigitalSin
  • Quaternius Modular Scifi Pack
    3.5
    v1.0.0Misc

    This asset contains the Quaternius Modular Scifi Pack converted to Godot meshlibrary and nodes. The models come with StaticBody versions to allow for collisions. It also comes with a demo scene.

    By: Malcolm Nixon
  • Audio BPM Sync Demo
    4.2
    v4.2-31d1c0cDemos

    A demo of how to sync the audio playback with the time for a consistent BPM (beats per minute). How it works: For the sound clock, it uses methods in the AudioServer singleton to synchronize the audio playback. For the system clock, it uses `Time.get_ticks_usec()`. Language: GDScript Renderer: Compatibility

    By: Godot Engine
  • MIDI Piano Demo
    3.5
    v3.5-9e68af3Demos

    This demo shows how to use InputEventMIDI by creating a piano that can be controlled by a MIDI device. This is known to work with a Yamaha MX88. The piano can also be controlled by clicking on the keys, or by manually calling the activate and deactivate methods on each key. Note that MIDI output is not yet supported in Godot, only input works. Language: GDScript Renderer: GLES 2

    By: Godot Engine
  • WebSocket Multiplayer Demo
    4.2
    v4.2-31d1c0cDemos

    This is a sample showing how to use WebSockets along with the Multiplayer API in Godot: https://docs.godotengine.org/en/stable/tutorials/networking/high_level_multiplayer.html Language: GDScript Renderer: Compatibility

    By: Godot Engine
  • Pause Demo
    4.2
    v4.2-31d1c0cDemos

    A demo showing how a game made in Godot can be paused. Language: GDScript Renderer: Compatibility

    By: Godot Engine
  • Window Management Demo
    4.2
    v4.2-31d1c0cDemos

    A demo showing the various window management features available through the DisplayServer singleton. - Moving the window. - Making it resizeable / nonresizeable and setting its size. - Minimizing and maximizing. - Moving the window around. - Making the window transparent. - Capturing, hiding or confining the mouse. - Getting various information about the screens, including DPI and refresh rate. Language: GDScript Renderer: Compatbility

    By: Godot Engine
  • Vector2 Array Resource Editor
    4.0
    v1.02D Tools

    Godot plugin that allows to edit PackedVector2Array as a polygon in the 2D scene view. This plugin provides a new resource Vector2ArrayResource which contains a property data of PackedVector2Array type. The Vector2ArrayResource is a wrapper for PackedVector2Array. When this resource is added to a node, and it is active, the plugin will provide functionality for easy editing data of the array.

    By: QuantumPilotRacer
  • Managed Memory Monitor
    4.2
    v1.1.0Tools

    Analyize memory allocations and garbage collections generated by managed code (C#).

    By: PumpkinPaul
  • A Dialogue Box
    3.2
    v0.22D Tools

    Easy to use dialogue box for all kind of games with not many features. Only the directory "addons/adbox" is necessary How to use in a scene: Activate the plugin. Another class `DialogueBox` is now added to your editor. You can now add it as a childnode to a scene. This new class has some script variables you have to set before using it. Message Sound: The sound that is played with each letter. (WAV) Font: the font you want to use. Action Name: the name of the action to be used to jump to the next message. Wait Time: The time to wait between each letter. Block Time: The time in which a dialog box-related input is going to be blocked immediately after the dialog box is closed. Margin Top Bottom: Margin size of top and bottom Margin Left Right: Margin size of left and right Signals dialogue_exit: when a dialog box is closed, it sends this signal. Code-Example: if Input.is_action_just_pressed("ui_down"): $DialogueBox.talk(["Message 1","Message 2", "Message 3", "Message 4"])

    By: divirad
  • Plugin Demos
    4.2
    v4.2-31d1c0cDemos

    This contains multiple plugin demos, all placed in a project for convenience. Due to GitHub issue #36713, you need to open the project to import the assets once, then close, then open: https://github.com/godotengine/godot/issues/36713 See the documentation on editor plugins for more information: https://docs.godotengine.org/en/latest/tutorials/plugins/editor/index.html How it works: This project contains 4 plugins: - The custom node plugin shows how to create a custom node type using `add_custom_type()`. - The material import plugin shows how to make a plugin handle importing a custom file type (`*.mtxt`). - The material creator plugin shows how to add a custom dock with some simple functionality. - The main screen plugin is a minimal example of how to create a plugin with a main screen. Check the `README.md` files included in each plugin's folder for more information. To use these plugins in another project, copy any of these folders to the `addons/` folder in a Godot project, and then enable them in the project settings menu. For example, the path would look like: `addons/custom_node/` Plugins can be distributed and installed from the UI. If you make a ZIP archive that contains the folder, Godot will recognize it as a plugin and will allow you to install it. This can be done via the terminal: `zip -r custom_node.zip custom_node/*` Language: GDScript Renderer: Compatibility

    By: Godot Engine