Sort
  • Godot FSM (Finite State Machine)
    3.2
    vv1.1.0Scripts

    A finite state machine implemented purely in code (GDScript). There are various methods to implement an FSM. This one uses state objects, a state machine, and includes a factory to create the state machine. Logic is contained with the state objects/classes that you create which can tell the state machine to transition to other states. There is support for _on_enter_state and _on_leave_state methods. Other implementations support features like arbitrary events, timers, and probably just other ways of solving the FSM problem which this library does not do. Rather than your state machine having methods to control transitions, the code is handled via the states themselves which contain a reference to the target object (your player node for example).

    By: brandonlamb
  • PostgreSQL client in GDScript.
    3.4
    v8.1Scripts

    Godot PostgreSQL Client is a GDscript script / class that allows you to connect to a Postgres backend and run SQL commands there. It is able to send data and receive it from the backend. Useful for managing player user data on a multiplayer game, by saving a large amount of data on a dedicated Postgres server from GDscript. The class is written in pure GDScript which allows it not to depend on GDNative. This makes it ultra portable for many platforms. Detailed documentation: https://github.com/Marzin-bot/PostgreSQLClient/wiki/Documentation

    By: Samuel Marzin
  • Simple Free-Look Camera
    4.0
    v1.0Scripts

    A simple 3D 100-line free-look camera for Godot 4 that mimics some of the functionality of the editor's camera for in-game use. See the "godot-3" branch on the GitHub repo for a version that works with Godot 3. Use W and S to move forward and backward. Use A and D to move left and right. Use Q and E to move up and down. Roll the scroll wheel to increase and decrease movement speed. Hold down the right mouse button to rotate the camera. There's a slider in the editor to control mouse sensitivity. Install it by attaching camera.gd to your Camera3D node.

    By: aloivmada
  • PostgreSQL Client in GDScript
    4.0
    v10.3Scripts

    Godot PostgreSQL Client is a GDscript script / class that allows you to connect to a Postgres backend and run SQL commands there. It is able to send data and receive it from the backend. Useful for managing player user data on a multiplayer game, by saving a large amount of data on a dedicated Postgres server from GDscript. The class is written in pure GDScript which allows it not to depend on GDExtention. This makes it ultra portable for many platforms. Detailed documentation: https://github.com/Marzin-bot/PostgreSQLClient/wiki/Documentation

    By: Samuel Marzin
  • Utility AI (GDExtension)
    4.1
    v1.6Scripts

    A set of nodes for making AI agents, with support to utility-based behaviour and state selection. Created using GDExtension and C++. The extension contains: - Utility-based AI Agent Behaviour nodes - Utility-enabled Behaviour Tree nodes (can also be used as a regular behaviour tree) - Utility-enabled State Tree nodes for hierarchical state management - Node Query System for generalized Utility-based node queries, with time-budgeting Binaries available for Windows and Linux. Web/Wasm and (unsigned) MacOS binaries are also included and are currently experimental. The linked github release zip-file contains only the gdextension files. Please download the example project as a separate zip-file from the Releases page or using this direct link: https://github.com/JarkkoPar/Utility_AI_GDExtension/releases/download/v1.6/utility_ai_example_project_1.6.zip The Utility AI GDExtension contains utility-based nodes for creating AI Agent Behaviours and a generalized Node Query System for performing "find top N nodes" queries. The Agent Behaviour, State Tree and the Behaviour Tree nodes can be used to create AI agents to your games, and the Node Query System to add searching and ranking of any type of node to find, for instance, the best tile to move to, the best cover point to take, the best buff to use, etc. The Node Query System has a time budgeting feature, which will spread out the queries to several frames when the given per-frame time budget is reached (i.e. it will keep your FPS up even with heavier queries). To get started, open the included example project. It contains examples that will help you learn to use the nodes: - Example 1 is a simple example with an AI agent that has very simple behaviours to follow the mouse cursor. - Example 2 is a more elaborate example with an AI agent that has multiple behaviours and has two AI teams fighting for their lives. - Example 3 shows a better way of using actions to make your actions more re-usable between AI agents. - Example 4 shows how to use the UtilityAIArea2DVisibilitySensor to let your AI see and hear player actions in the game world. - Example 5 shows how to use the Behaviour Tree nodes with the Node Query System, and demonstrates the time budgeting feature. - Example 6 is a 3D example that shows how to create a simple cover system and an AI that tries to hide behind cover, using the AI Agent Behaviours, Behaviour Tree nodes and the Node Query System. This repository contains the binaries and example project only. If you want the source code, follow the link in the readme.md to the source code repository. Tutorials can be found here: https://github.com/JarkkoPar/Utility_AI_GDExtension/tree/main/tutorial Full release notes for the latest release can be found here: https://github.com/JarkkoPar/Utility_AI_GDExtension/releases/tag/v1.6

    By: Grr
  • XR Kit
    4.2
    v0.4.0Scripts

    XR Kit is a set of addons providing various features for XR development in Godot 4. Complete description and demo project available at: https://github.com/patrykkalinowski/godot-xr-kit Physics Movement: Physics-based XR movement. Player hands collide with environment and can grab or push physics object in realistic manner. Player body can collide with physics objects and be moved around in space. Hand Gesture Recognition: Real-time recognition of hand poses based on predefined templates. Smooth Input Filter: Applies smoothing to XR hand movement using 1Euro filter. Supports hand and controller tracking. Can be used to reduce microstutter or simulate fake weight by increasing hand movement lag. Cinematic View: Smooth VR preview for recording in native monitor resolution. "xr-kit/examples/playground.tscn" implements Physics Movement and Hand Gesture Recognition. "xr-kit/examples/smooth_input_filter.tscn" implements Smooth Input Filter. XR Kit has been tested with SteamVR and Oculus (PC and standalone) using Meta Quest 3.

    By: patrykkalinowski
  • GodotSx - Signal Extensions
    4.0
    v1.9.2Scripts

    This plugin enables Rx-like handling of Godot's native signals without having to resort to using a full-blown Rx library. Signals can now be merged, filtered, mapped and more! Note: This is NOT a full Rx implementation by design. Visit the GitHub page for more information and examples: https://github.com/TheWalruzz/godot-sx

    By: TheWalruzz
  • Twitcher
    4.2
    v1.3Scripts

    .. is a Godot Library for implementing Twitch functionality in Godot. The main purpose is to use this library for easier overlay development. The library can also be used to support Twitch game integration. Features ===== - Integration of Authorizationsflows (Auth Code, Client Credentials, Device Code, ~~Implicit~~) - Configuration driven approach. Almost all feature can be configured and used afterwards. But programatically approach is also supported. - Auth Credentials - Requested Auth Scopes - Subscribed events for EventSub. All possible events with their needed configurations. - ... - Easy integration of chat support via Node `TwitchIrcChannel` - Easy integration of event sub via Node `TwitchEventListener` - Complete REST Api (provided by [https://twitch-api-swagger.surge.sh/](https://twitch-api-swagger.surge.sh/)) with data classes for type safety - Cheer Emote parsing - Command Handler for easy implementing custom commands - Handles low level integration of websocket and http requests for you that is fully compatible with the Twitch Docs - GIF support for emojis via ImageMagick (other options are planned) Secondary Features ============ - BufferedHttpClient to request multiple requests to the same API without manual orchestration, handles automatical reconnect - Simple load balanced HTTP Client: HTTP request in parallel - Simple Websocket Client with auto reconnect - GIF to SpriteFrame importer - Simple Logger to enable and disable logging for modules - Simple generator for the Twitch REST Api in case of changes (maybe a good base for other Swagger APIs too, maybe not cause the code generator is trash and hold together with duct tape) - A RichTextEffect to positioning SpriteFrames within a RichTextLabel (easy to extend to support positioning everything within a RichTextLabel)

    By: kani_dev
  • Dijkstra Map Pathfinding
    3.5
    vv1.3Scripts

    A more feature-rich alternative to AStar. Main feature is the ability to pre-compute paths from given origin point to all points, which can then be easily accessed.

    By: KohuGaly
  • GOAP
    3.0.4
    v1.0Scripts

    A simple implementation of Goal Oriented Action Planning. It provides a script to define action planner nodes that accept actions defined as subnodes or programmatically, and can generate a plan (a sequence of actions) from a description of the current state of the character, and a goal to be achieved. It comes with a funny example that shows how GOAP can be used to easily create complex behaviors.

    By: RodZilla
  • Old Style FPS Controller
    3.2
    v1.2Scripts

    INPUTS: "forward" "back" "left" "right" "crouch" "jump" This is a character controller that mimics the older "broken" version of move and slide. It has a constant move speed on slopes rather than the "correct" decelerating on ascent and accelerating descent and will stop on slopes below the max climb angle. Also supports bunny hopping and air strafing. Uses mouse for look. Max climb angle, move speed, acceleration, and friction all set with exports. Crosshair is available standalone at https://github.com/0xspig/CrosshairShader

    By: 0xspig
  • Godot Weapons
    3.1
    v1.0.1Scripts

    ## Weapon Plugin for Godot Weapon bootstrapping in Godot 3.1, written in GDScript. ### What is a weapon? Essentially, I view it as a tool that can be used periodically. This project aims to flexibly implement tool/weapon usage and provide common components. ### How To View the examples in `Test/` for a full introduction to the API. #### Elevator Explanation A weapon is an action with a cooldown. This action may end immediately, after a time period, through an animation, or however you decide (just be sure to call `end_attack` [or `end_action`/`end_reload` depending on situation]). Components can be added as direct children to modify the action's ability to start or end, and may have further customization options in the editor. This project aims to cover most common component needs, but you can extend them or add your own if you like. ### Base components These components will work immediately. - Ammo: Disables the gun when the capacity drops to zero. Could also work as Stamina - Charge: Disables the weapon when capacity is less than Max_Capaciy. - AutoAttack: auto starts the attack upon entering the tree. Restarts the attack once it finished successfully - StartBlocker: conditions/trigger to start action - EndBlocker: conditions/trigger to end action (useful for a charged weapon with a manual release) - BulletSpawner: for instancing scenes on weapon state change. For a bullet hell or intensive application, this should be refactored to pull from an object pool. - Magazine (includes reload action): a magazine. Must make children editable to customize via the Capacity and LongAction children nodes. ### Common Components These components require further scripting to customize them to your weapon-specific implementation. - Combo: change weapon data (animation played, cooldown delay, etc) if it is used quickly enough. Need to add extra data to the JSON and apply it. - Burst: changes multiple attacks into a single atomic attack. Will stop partway through if gun cannot fire (ran out of ammo etc). Relies on developer to implement different cooldown times for burst and non-burst attacks. Need to implement "_apply_burst/original_cooldown" - Recoil: bounce the weapon after shooting. Need to write application for 3D, or change 2D application if your gun needs it. ### Util - Capacity: Parent class for Ammo, Charge, MagCapacity, and others. Has a min, max, and step (for easy increment/decrement). - LongAction: Base class for attacking and cooldowns. Leaves implementation up to developer but allows the components to interact predictably ### Notes All weapons/components currently only tested in 2D, but should work in 3D too.

    By: jarlowrey
  • Agones SDK Plugin
    3.2
    v0.2.0Scripts

    This plugin adds Agones SDK functionality to GDScript. With this plugin you can call Agones SDK functions using GDScript to create your dedicated server powered by Agones and Godot Engine.

    By: AndreMicheletti
  • Full Screen Effects
    4.3
    v1.0Scripts

    This Screen Effects addon is created specifically for 3D projects. It includes a variety of full-screen effects, supports multiple instances for each effect, and features a smooth fade system for seamless transitions. An example project is included to help you get up and running quickly. Features: - Radial Blur - Screen Blur - FOV Shake - FOV Fade - Screen Shake - Fade from/to Color - Motion Blur - Multiple Instances: Multiple instances of each effect can be added and controlled individually. - Effect Management: Built-in system to handle the fade-in, fade-out, and duration of each effect. - Example Project: Includes a sample project demonstrating the usage of the addon.

    By: ioannis
  • Dice Syntax Godot4
    4.0
    v3.1.1Scripts

    Godot 4 port of the Dice Syntax addon Functions for supporting a dice rolling syntax (eg "4d6d1!"). Allows for dice rolls and probability calculations. The syntax supports dropping high/low rolls, exploding/compounding dice, and rerolls. See https://github.com/oganm/dice_syntax_gd for a documentation

    By: OganM
  • Dice Syntax Godot 3
    3.5
    v2.2.2Scripts

    Functions for supporting a dice rolling syntax (eg "4d6d1!"). Allows for dice rolls and probability calculations. The syntax supports dropping high/low rolls, exploding/compounding dice, and rerolls. See https://github.com/oganm/dice_syntax_gd/tree/godot3 for a documentation.

    By: OganM
  • GWJ Accessibility Scripts
    4.0
    v0.1.0Scripts

    Scripts for managing accessibility and persistent settings. Created by the Godot Wild Jam community.

    By: Maaack
  • Sprite Slicing
    3.1
    v1.0Scripts

    Godot asset to slice 2D sprites. Check the README of the repository for more information.

    By: lupoDharkael
  • PlatformerController2D
    4.0
    v2.0.2Scripts

    This is a platformer class with many tweakable settings which can be used to control a 2D character (think supermario 1). ##Features - Double jump - Coyote time - Jump buffer - Hold jump to go higher - Defining jump height and duration (as opposed to setting gravity and jump velocity) - Assymetrical jumps (falling faster than rising)

    By: evpevdev
  • Enhanced Stat
    4.1
    v0.0.1Scripts

    Enhanced Stat is an addon suite for Godot 4.1, designed to provide an intuitive and powerful way to manage stats in games such as Health, Mana, Speed, and Attack Damage. This addon is part of the **Enhanced** suite aimed to make your Godot development faster, cleaner, and more enjoyable!

    By: Zennyth
  • Advanced Save System
    3.1
    v1.0Scripts

    An advanced save system prototype for Godot 3.1. This save system can be used in rpg games where the player moves from level to level and the game has to keep track of all the changes to those levels. The demo constist of three levels: green < red > blue. You move through them by stepping on the yellow arrows. White circles are rigid bodies, their properties will be saved either when you save to a slot (buttons at the top) OR automatically when moving to another level. Red blocks are enemies, they will get permanently deleted from the scene once collided with. Press RMB (right mouse button) to create new rigid bodies. You can also move objects from one level to another, but it's not shown in the demo.

    By: rdmtt
  • Android Billing Godot Plugin
    4.4
    v1.2Scripts

    AndroidIAPP is a plugin for the Godot 4.4.1 game engine. It provides an interface to work with Google Play Billing Library version 7. The plugin supports all public functions of the library, passes all error codes, and can work with different subscription plans.

    By: Max Trash