Sort
  • EzNet
    4.0
    v1.0.2Scripts

    Godot multiplayer made easy! Based off of the networking library built in the RoyasGodot Multiplayer Series!

    By: Royas
  • HCoroutines
    4.2
    v2.0.1Scripts

    HCoroutines is a library that helps you write game logic in an intuitive way by bringing the concept of hierarchical coroutines to Godot (C#). Its built-in coroutine types are specifically designed for Godot, reducing boilerplate code and increasing readability. At the same time, async methods can also be seamlessly integrated with coroutines. Coroutines are functions that can be paused during execution and then resumed once some condition is met. This allows you to write game logic in sequential steps, defining what logic should be performed when. This library extends the idea of normal coroutines by allowing them to spawn child coroutines. When the parent coroutine is killed, the child coroutines are also stopped. HCoroutines implements this concept in an efficient and optimised way. - Regardless of how deep the hierarchy of coroutines gets, the engine only updates the currently active ones, and not ones that are waiting. - The coroutines themselves are implemented as linked lists, allowing for O(1) addition and removal of child coroutines. Because each coroutine is itself a node in the linked list data structure, no additional memory allocations are required. originally made by Inspiaaa for Godot 3.5: https://github.com/Inspiaaa/HCoroutines IMPORTANT: Add ./addons/HCoroutines/CoroutineManager.tscn to your Project Autoloads!

    By: BangL
  • C# OnReady Plugin
    4.1
    v1.0Scripts

    This plugin provides an extension to Godot's functionality, emulating the @onready directive from GDScript within C# scripts.

    By: dehyvis.lecuna
  • GUS - Godot Universal Serializer
    3.4
    v1.03Scripts

    A Godot's universal serializer for size optimization Feature: 1. Without losing type information. Need not type detection and forced typce conversion in Cross end transfer,just like local parameter transfer. 2. Integer and float are variable length serialization. 3. The serialized data size is smaller than JSON text to utf8 and the native serialization method (var2bytes ()).GUS is especially suitable for the serialization of structured small dat transfer in multiplayer games.You can call GUS._test() to view the data size comparison after serialization in these three way. How to use: 1. Modify the configuration definition constants at the beginning of the script as required. 2. Pass variable which without Object and Eid into GUS.to_bytes() and gets the serialized data for sending through any network peer. 3. After the remote network peer obtains the serialized data, passe it into GUS.to_var () to get the same variable as before serialization. Additional: The obtained serialized data can be passed into GUS.get_ pretty_ json_text(), a beautified JSON text will be return, which is for printing and display when debugging. Be careful: 1. The configuration definitions of cross end applications should keep the same. 2. Array and Dictionary should not contain Object or RID. 3. Because of implementing by GDScript, although the serialized data size is better, it will cost lot of time when serialization and deserialization large array(both Array and PoolArray), you should avoid to use GUS in time sensitive case. TODO: 1. Write GUS 2.0 applicable for godot4 X . 2. Write as C++ addons to solve the problem of low efficiency of large array serialization. Edit history: January 21, 2022: Daylily-Zeleen - [email protected] - v1. 03 In order to setting default value by string facilitatly in some special specific occasions, I made some change as below: a、Modify and add identification code for Boolean. b、Modify identification code for Boolean Array and Dictionary. For example, the default values of GUS encoded binary fields which stored in the database can be set as '[]', '{}', 'T' or 't', 'F' or 'f', which mean that empty Array, empty Dictionary, True and False . January 19, 2022: Daylily-Zeleen - [email protected] - v1. 02 a、Fix empty Array deserialize error. b、Fix empty Dictionary deserialize error. c、Optimize empty pool arrays serialized size. January 19, 2022: Daylily-Zeleen - [email protected] - v1. 01 a. Add type detection assert to GUS.to_bytes() for debugging purposes. b. Add 'null' and 'bool' into GUS._test(). c. Add "How to use". d. Add descriptions of common methods and test methods. e. Optimize the text for push_error() when deserialize(GUS.to_var()) faild. January 18, 2022: Daylily-Zeleen - [email protected] - v1. 0

    By: Daylily
  • GDScript Interfaces addon
    4.0
    v1.0.7Scripts

    Adds interfaces to GDScript so you do not have to wait for traits and use interfaces in curent or even older Godot versions. See README.md file for usage examples. WARNING: tested only with godot 4.3

    By: Rito12
  • Godot Factory
    3.4
    v0.1Scripts

    # Godot Scene Factory 2D and 3D Nodes for spawning scenes ## API ### Signals - `spawned`: Is sent after an entity is spawned. ### Export Variables - `entity_scene`: The scene to be spawned. - `entity_parent_path`: The path of the node that should be the parent of the spawned entity. defaults to the factory node. - `timer_path`: Allows you to you connect a timer that will spawn an entity when it times out. - `set_entity_as_toplevel`: Whether or not to set the entity as the top level. ### Functions - `spawn`: Spawns an entity. ## Attribution [Factory](https://icons8.com/icon/cFq1ElpDRijU/factory) icon by [Icons8](https://icons8.com)

    By: drumstickz64
  • Borderless Display
    3.5
    v1.1.0Scripts

    Multiresolution Support for pc/mobile devices including safearea. New nodes: - BorderlessDisplay: New node to control the scaling area of our game. - ButtonDisplayTest: New node for testing with multiple resolutions. # Changelog ## [1.1.0] - 2023-03-13 ### Added - add editor button set viewport resolution ### Changed - change class_name to add_custom_type ## [1.0.1] - 2023-03-10 ### Added - CHANGELOG.md - guides autocenter ### Changed - [godot v3] fix get window height override - [godot v3] fix set properties defaults

    By: lowlevel.1989
  • Bad Words Filter
    3.5
    v1.0Scripts

    Filtering bad words for your game. Can be useful for: Filtering bad words before that goes into leaderboard usernames. functions: is_word_ok(word) -> returns a bool (false if the word contains bad word, true if it is safe)

    By: rockgem
  • GUS - Godot Universal Serializer
    3.4
    v1.04Scripts

    A Godot's universal serializer for size optimization Feature: 1. Without losing type information. Need not type detection and forced typce conversion in Cross end transfer,just like local parameter transfer. 2. Integer and float are variable length serialization. 3. The serialized data size is smaller than JSON text to utf8 and the native serialization method (var2bytes ()).GUS is especially suitable for the serialization of structured small dat transfer in multiplayer games.You can call GUS._test() to view the data size comparison after serialization in these three way. How to use: 1. Modify the configuration definition constants at the beginning of the script as required. 2. Pass variable which without Object and Eid into GUS.to_bytes() and gets the serialized data for sending through any network peer. 3. After the remote network peer obtains the serialized data, passe it into GUS.to_var () to get the same variable as before serialization. Additional: The obtained serialized data can be passed into GUS.get_ pretty_ json_text(), a beautified JSON text will be return, which is for printing and display when debugging. Be careful: 1. The configuration definitions of cross end applications should keep the same. 2. Array and Dictionary should not contain Object or RID. 3. Because of implementing by GDScript, although the serialized data size is better, it will cost lot of time when serialization and deserialization large array(both Array and PoolArray), you should avoid to use GUS in time sensitive case. TODO: 1. Write GUS 2.0 applicable for godot4 X . 2. Write as C++ addons to solve the problem of low efficiency of large array serialization.

    By: Daylily
  • GodotParadiseHealthComponent
    4.1
    v1.0.1Scripts

    Effortlessly simulate health and damage for entities within your video game. This component handles all aspects related to taking damage and managing health on the parent node. While typically added to a CharacterBody2D, there are no limitations preventing its use with a StaticRigidBody2D, allowing you to imbue life into objects like trees or other in-game elements.

    By: BananaHolograma
  • GUS - Godot Universal Serializer
    3.4
    v1.04Scripts

    A Godot's universal serializer for size optimization Feature: 1. Without losing type information. Need not type detection and forced typce conversion in Cross end transfer,just like local parameter transfer. 2. Integer and float are variable length serialization. 3. The serialized data size is smaller than JSON text to utf8 and the native serialization method (var2bytes ()).GUS is especially suitable for the serialization of structured small dat transfer in multiplayer games.You can call GUS._test() to view the data size comparison after serialization in these three way. How to use: 1. Modify the configuration definition constants at the beginning of the script as required. 2. Pass variable which without Object and Eid into GUS.to_bytes() and gets the serialized data for sending through any network peer. 3. After the remote network peer obtains the serialized data, passe it into GUS.to_var () to get the same variable as before serialization. Additional: The obtained serialized data can be passed into GUS.get_ pretty_ json_text(), a beautified JSON text will be return, which is for printing and display when debugging. Be careful: 1. The configuration definitions of cross end applications should keep the same. 2. Array and Dictionary should not contain Object or RID. 3. Because of implementing by GDScript, although the serialized data size is better, it will cost lot of time when serialization and deserialization large array(both Array and PoolArray), you should avoid to use GUS in time sensitive case. Currently is stable and simple to use. I will not update this script unless someone report a fatal error to me.

    By: Daylily
  • Seeded Random Sequence
    3.1
    v1.6Scripts

    This simple module is an RNG-Safe Random Number Sequence. In a nutshell, it is an RNG that you have control over, completely safe from outside Godot RNG calls and reseeding. Now you can simply create an instance of the class with a seed and request items in the sequence, as well as previous results. This is very useful for procedural generation and testing, where you want a random sequence that is deterministic and protected from outside interference. Since Godot uses a static RNG, it is susceptible to interference and this solves that issue. This is confirmed to work with Godot 3.0, but should also work with previous and future versions. It is also compatible with in-editor tools! See the repo for more details.

    By: Dorblin7z7
  • JSON Minifier
    3.2
    vv0.1Scripts

    A minifier for the JSON file format.

    By: 2shady4u
  • GroveGames.DependencyInjection
    4.0
    v0.2.0Scripts

    A lightweight dependency injection framework developed by Grove Games for .NET and Godot

    By: grovegames
  • Heart Rate Plugin for HypeRate
    4.0
    v2.0.2Scripts

    HypeRate is an easy to integrate addon that enables you to use the players heart rate as game mechanic. By simply integrating HypeRate's API into your code, you can create innovative gameplay based on a stable service provided by HypeRate trusted by more than 55000+ users and streamers. Important note about the license Only the addon code itself is released into the public domain under the GPL 2.0 license. The calling code (your application) can be licensed under any license you wish. Ask us anything on our Discord server! With HypeRate you can provide your game with exciting and unforeseeable dynamics by setting heart rate thresholds to: Adapt enemy spawn rates Dynamic health recovery according to heart rate Altered aiming in FPS games Create an interesting Poker experience ;-) and many many more! Make your idea come to life with HypeRate - a trusted service that is compatible with more than 200+ devices and is also accessible for the user with a web application without the need for a smartphone. HypeRate is free for users, API charges may apply. Apply for API Key here: [https://www.hyperate.io/api]

    By: HypeRate
  • IconTexture
    4.4
    v25.04.29Scripts

    A texture that draws an icon of a Theme resource.

    By: ninstar
  • Auto-Bus (auto event bus with signal nodes)
    4.1
    v1.0.0Scripts

    The purpose of the plugin is to dynamically create an event bus for each [SignalNode] without the need to create a singleton to manage it. The plugin adds 2 nodes: SignalNode <- a node representing a signal where the 'name' property is the signal's name. SignalReceptor <- a node representing a signal receiver, where the 'react_to' property is the name of the signal it expects to receive.

    By: SrColoma
  • RangeContainer
    4.4
    v25.03.05Scripts

    A ScrollContainer that can be controlled by external Range nodes.

    By: ninstar
  • KBM/Controller Switch Detector
    4.1
    v1.0Scripts

    Description: This plugin can detect if input is coming from Keyboard And Mouse or Controller, and can detect what type of controller is being used (Xbox, PlayStation, Nintendo, Steam), it uses a simple autoload so you don't have to do anything else other than just using it! Usage: 1) When you have to check if the user is currently using a gamepad or a keyboard you can just use: "KBM_ControllerSwitchDetector.keyboardOrController" (true if Keyboard is being used, false if Controller is currently being used) 2) When you have to get the controller type, use: "KBM_ControllerSwitchDetector.controllerType"

    By: xShader1374_
  • Firebase Analytics
    3.5
    v1Scripts

    Android plugin Firebase Analytics for Godot 3.5.1 engine

    By: Leha_P/Qumico
  •  GodotTouchCamera
    3.5
    v1.0.1Scripts

    This asset provides a 3d camera that can me controlled from a touch screen interface.

    By: Dion
  • Plug-and-Play XR Features
    3.4
    v1.0.0Scripts

    Check README for more info! Features: `ReferenceOffsetCompensatingRotator` - Rotates parent node - Uses its own position as reference (use with RemoteTransform) - Offsets parents based on its own global displacement resulting from the rotation - This is useful for rotating the character *without moving the HMD camera* `FreeLookMover` - A feature node that moves its *Spatial* parent - Based on input actions - According to its own orientation - It can be used as a free look feature. `FlatWorldPhysicsKinematicMover` - Moves its parent kinematic body - Based on input actions - According to its own orientation - Uses collisions - Has many exported physics properties for the pretense of some realistic physics based movement - Has gravity - Great for normal character movement `TripleMethodOrientationGuesser` - Sets parent's forward direction - Uses VR HMD orientation, only if it is upright - Uses global position of VR controllers compared to its own - Uses the relative position of the left-right controllers to each other - The goal of this feature is to provide an intuitive way to guess the rotation of the physical player based on their head and hands poses `VrFrameHeightScaler` - Calculates its relative altitude in the VR Origin frame - Sets the height property on the parent - Useful to set height on a collision shape based on the real-world altitude of the VR HMD

    By: balintbarna
  • MiniScript C#
    4.2
    v1.2.0Scripts

    Provides an easy to use node for integrating MiniScript into your project. Versions: 1.2.0 - Support all keywords in highlighter 1.1 - Add code highlighter 1.0 - Release

    By: raiyni
  • Borderless Display
    4.0
    v1.1.0Scripts

    Multiresolution Support for pc/mobile devices including safearea. New nodes: - BorderlessDisplay: New node to control the scaling area of our game. - ButtonDisplayTest: New node for testing with multiple resolutions. # Changelog ## [1.1.0] - 2023-03-13 ### Added - add editor button set viewport resolution ### Changed - change class_name to add_custom_type ## [1.0.1] - 2023-03-10 ### Added - CHANGELOG.md - guides autocenter ### Changed - [godot v3] fix get window height override - [godot v3] fix set properties defaults

    By: lowlevel.1989