Actually good first person controller for the Godot Engine. MIT License (credit Colormatic Studios)This first person controller was made because there weren't many first person controllers for Godot at the time, and the ones that did exist were pretty bad.It is highly customizable and comes with many features, QOL, and readable code.Move with WASD, space to jump, shift to sprint, C to crouch.FEATURES: In-air momentum Motion smoothing FOV smoothing Head bobbing Crouching Sprinting 2 crosshairs/reticles, one is animated (more to come?) Controller/GamePad support (enabled through code, see wiki) In-editor tools (enable editable children to use)If you make a cool game with this addon, I would love to hear about it!Check out the Colormatic Git page for a wiki and more.https://git.colormatic.org/ColormaticStudios/quality-godot-first-person
SELODEV Free Starter KitA small, finished top-down game you can press Play on, plus every free SELODEV Lite system already sitting in the project. No coding required.The game is the same one from the Free Starter: walk around, talk to the Healer, take a quest, gather three herbs, save. What's different is what comes with it.Fourteen systems are in `addons/`, waiting for when your game needs one.Play it (Godot 4.3 or newer)Open this folder in Godot and press **Play (F5)**.- **Move:** arrow keys or WASD- **Talk:** walk up to the Healer, the green one, and press **Space** or **Enter**- **Gather** the three herbs that light up- **Save and Load:** buttons at the top rightThat loop of talk, quest, collect, save is a real game. The part that normally needs a programmer, wiring the systems into each other, is already done for you in the `content/` data files.Start HereWhen the project opens, look for the **Start Here** tab on the right, next to the Inspector. It's a four-item list that ticks itself off as you work, and it holds the switches for all fourteen systems. If you read one thing, read that panel.The fourteen systemsThree are switched on out of the box, because the story game uses them:| On | System | What it does ||---|---|---|| yes | Dialogue | Conversations with choices || yes | Quests | Objectives that track and complete || yes | Save / Load | Save slots that survive quitting || | Controller | Walking, jumping, press-E on things || | Inventory | Carrying items, stacking, weight || | Equipment | Wearing gear that changes your stats || | Loot | What a chest or enemy drops, and how often || | Crafting | Turning items into other items || | Vendor | A shop that buys and sells || | Stats / Skills | Health, damage, levels, skill points || | Combat | Hitboxes, damage, dying || | Enemy AI | Enemies that notice you, chase, give up || | Scene Flow | Doors between rooms, spawn points, checkpoints || | Audio | Music that crossfades, sound effects, audio zones |The other eleven ship switched off on purpose. Each one adds a tab beside the Inspector, and fourteen of them fills that tab bar well past the point where you can read it. Turn one on from Start Here when you want it, or from Project Settings then Plugins if you prefer. Switching one off deletes nothing.## What's inside- `content/*.json` is the game's data, the conversation and the quest. Edit these to change the game. No scripts involved.- `game/` is the world, the player, the NPC, the herb pickups.- `chassis/` is the glue that boots the systems from `content/`. You won't need to touch it.- `addons/` holds the fourteen Lite systems and their no-code editor docks.- `tools/` holds the automated checks, one folder per system.The `.orig` files beside `content/dialogue.json` and `content/quests.json` are the copies that shipped. Start Here compares against them to work out whether you've edited anything yet, so leave them where they are and the checklist keeps working.## Run the checks yourselfEvery system carries a headless test suite:```bashgodot --headless --path . tools/dialogue_lite/verify.tscn```Swap the folder name for any other system. `tools/starter_kit/verify.tscn` checks the Start Here panel itself.Growing out of the Lite tierEach Lite system is the free cut of a paid one. When you hit a wall, the full version drops into the same place and speaks the same event bus, so nothing has to be rebuilt. The full catalogue is at https://selodev.itch.io.## Make it yoursSee **MAKE-IT-YOURS.md**. The short version: change the words in `content/`, swap the coloured squares for your art, and switch on whatever system your idea needs.LicenseMIT. Make it, rename it, ship it, sell it. That's the point.
*All informations are in the Github repository page !https://github.com/Jeh3no/Godot-Simple-State-Machine-First-Person-ControllerA simple first person controller asset made in Godot 4.-------------------------------------------------------------------------------------------This asset provides a fully commented, finite state machine based first-person controller with a modular camera system and a debug properties HUD. It is 100% written in GDScript and follows GDScript conventions. My main goal with this project is to provide an easy + complete way to manage and modify a controller for first person games.A test map is included to demonstrate the controller's capabilities.The controller uses a finite state machine architecture where each state has its own script, making it straightforward to add, remove, or modify behaviors. All movement parameters, camera settings, and keybindings are exposed as export variables in the inspector for easy customization.-------------------------------------------------------------------------------------------Compatibility :- Godot 4.4 - 4.7: Fully supported.- Godot 4.0 - 4.3: Should work, but you will need to delete the .uid files.-------------------------------------------------------------------------------------------Features :Movement : - Finite state machine based controller - Smooth acceleration and deceleration - Slope and hill traversal - Walking - Crouching (continuous hold or toggle) - Running (continuous hold or toggle) - Jumping (configurable multi-jump) - Jump buffering - Coyote time - Air control (customizable via curves) - Bunny hopping (with optional auto bunny hop)Camera : - Per-state FOV transitions - Forward and side tilt - Head bob - Zoom - Configurable mouse sensitivityUI : - Crosshair/reticle - Debug properties HUD - Input action checker
Heightmap-based terrain for Godot 4.1 and later.It supports collision, texture painting, colouring, holes, level of detail, and grass.This is a port of the Godot 3 version, with a few changes.Fixes in 1.7.2:- Fixed error when removing a texture from a TextureSetFixes in 1.7.1:- Fixed terrain loading incorrectly in release (non-debug) exportsChanges in 1.7:- Ported the plugin to Godot 4.1- Heightmaps now use 32-bit floats instead of 16-bit floats- Changed some APIs to use `Vector2i`- Added `cast_shadow` setting to `HTerrain`- Added `cast_shadow` setting to `HTerrainDetailLayer`- Added slope limit slider to detail density painting- Exposed `roughness` in detail layer shader (but reflections may be off due to the normals hack)- Allow decimal values in `min_height` and `max_height` when importing a heightmap- Changed shape list in brush settings so it can be used as a regular palette when cycling is off- Fixed terrain not functional when using a 32-bit version of Godot (The GDNative library is only maintained for 64-bit)- Fixed TextureSet editor logging errors when selecting slots with textures using color codes instead of image files- Fixed texture list becoming empty when selecting another terrain sharing the same TextureSet
This will allow you to create massive terrain, for open world games.This plugin is written in c++ in GDExtensionTerrain is divided into different region and the height map texture for region far away from terrain has lower resolution so take less space in VRAMThis also support grass system which you can use that for grass, or rock, Also grass system support collision which let you to create massive forest of tree with collision really fast (Grass is also Paintable)You can also bake navigation mesh from terrain (navigation mesh is also Paintable)Supporting sculpt brushSupport Height-map non destructible layersSupporting HolesSupporting WaterSupporting Color brush with different algorithm like Splat-mapping, Index mapping, bit-wise brush ...------------------------------------------------This release:Grass Data per instanceThe biggest update for this version is the grass data custom which you can send to grass! You can send these data to each instance of grass:You can send some random number unique for each grass instance, you can control this random number!You can send any image which you used in Terrain to grass, only a single color value depend on the position of the grass on terrain will be sended to grassYou can also send the grass creation time which you can calculate the age of grass and create a growing effect for grassThis update is not about grass data there are more features and bug fixesOther changesNow if you add an image in terrain data and you do not declare that in terrain Shader, that image will remain only on RAM memory, and you can read from that and use that in various things! (One use of that is to send that data to grass)Optimizing grass update in run-timeFixing the color paint issueThis time the color which you paint will appear in the background of each layer in paint panel (only for color-brush and channel-painter)Detecting OpenGL or compatibility mode and changing the Shader code for that so it will work as you start a new-project (If you create a terrain with Vulkan and then change to OpenGL you need to fix the Shader code by yourself as some Shader code which works for Vulkan does not work for OpenGL)In this release we have a road system! but it is just a start!
Demonstrate how to use the "Godot LLM" plugin.# How to use1. Get `Godot LLM` directly from the godot asset library, or download the addon from [godot-llm](https://github.com/Adriankhl/godot-llm) and place it to the `addons` folder2. Download models * Text generation recommendation: Meta-Llama-3-8B-Instruct-Q5_K_M.gguf from https://huggingface.co/lmstudio-community/Meta-Llama-3-8B-Instruct-GGUF/tree/main or Phi-3-mini-4k-instruct-Q2_K.gguf from https://huggingface.co/bartowski/Phi-3-mini-4k-instruct-GGUF/tree/main for low-end devices such as Android phone * Similarity recommendation: mxbai-embed-large-v1.Q5_K_M.gguf from https://huggingface.co/ChristianAzinn/mxbai-embed-large-v1-gguf/tree/main * Image to text recommendation: llava-phi-3-mini-int4.gguf from https://huggingface.co/xtuner/llava-phi-3-mini-gguf/tree/main, also download the `llava-phi-3-mini-mmproj-f16.gguf` from the same page* Vector Database setting is similar to `Similarity`3. Open the application with GodotYou will see 4 modes: `Text Generation`, `Similarity`, `Image to Text`, and `Vector Database`In each mode, you need to clide `Model` to point to the correct model `gguf` file. Additionally, in `Image to Text` mode, you need to click `Mmproj` to point to your `*mmproj*gguf` file.# Text GenerationYou will see there are 3 generation mode: `Simple`, `Instruct`, and `Interactive`. ## `Simple` modeJust edit the prompt and click `Generate`. Click `Stop` to stop the generation.You choose `None` schema or `Person` schema, if you choose `None` schema, the model will generate the information of a character with Json format.## `Instruct` mode (currently disabled)Click `Start` first with empty prompt, then modify the prompt and click `Continue` when it is available to talk to the AI. This is an interactive mode. Whenever you see the `Continue` button is available, either input something in the prompt and click `Continue` to send the input, or simply click `Continue` to let the AI talk itself.## `Interactive` modeSimilar to the instruct mode, except that it relies on a good initial prompt and additoinal reverse prompt and input suffix settings to generate a smooth conversation. The preset prompt should work decently well, click the `Start` button with the preset prompt and start talkin to the AI.# SimilarityInput prompts to compute the `Embedding`, or input two prompts to calculate their `Similarity`# Image to TextSelect an `Image` from your device. Alternative, click `From View` to capture your game screen as the image. You can `Compute Base64` encoding for your image, or decode a base64 string back to `Compute Image`. Edit the prompt, and generate text from `Image`, `Base64`, or `View` (your game screen).# Vector DatabaseClick `Metadata: id, year` to define the metadata of the tables, then click `Create tables` to create a some tables for embedding storage and retrieval. Click `Store text` to split the document into chunks and store into the database, you may also click `Split text` to see the chunks. Click `Retrieve` to retrive three most similar text chunks with the upper left prompt, which satisfy the sql-where-clause in the middle right. You may also turn on "Verbose stdout", modify the upper prompt to a valid sql statement, and click execute to run the sql statement directly, you will see the result in godot log.
Godot 4 template, with shader, prototyping with CSG objects, animation, smooth character controller.
An FPS multiplayer template with everything you'd need to get started. Includes a full map with custom 3d assets.Features:- Multiplayer- Full map with custom assets- Controller support (including menus)- Cinematic Main menu- Pause menu- Options menu with: - Fullscreen - Fps and ping counters - Mouse and controller sensitivity- Bullets wall collision- Random respawn on map- Adjusted light and environment ("better graphics")QOL:- Configurable random respawns Player > Inspector > Spawns- Tooltips for exported variablesThe 3d assets are made by me and go by the same MIT license, so you are free to use them in your commercial games.Credits:- Textures used are made by https://kenney.nl/ and pre-packaged for Godot by Calinou- The base multiplayer functionality was made by following a tutorial from DevLogLogan https://youtu.be/n8D3vEx7NAE
Turtle implementation for GodotTemplate enabling training of basic programming skills in godot environment with visual feedback.
Utility for capturing, saving, and loading XR hand tracking data.
Distribute meshes along Path3D with gaps, randomization, and transforms
An editor plugin that allows assets to be instantiated and dropped on a 3D scene using physics. Useful to automatically place assets that need to lay naturally on the ground or against other assets.This tool is compatible with any Node3D derived PackedScene as it works by temporarily wrapping the asset inside a RigidBody3D. Then, the physics simulation is enabled for a couple of seconds just for the newly spawned instances.The RigidBody3D node needs a CollisionShape3D to work, which is created automatically using the parameters exposed in the inspector next to the field to select the asset.