Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/pyxus/fray
Fray – Godot Combat Framework
https://github.com/pyxus/fray
fighting-game-engine game-development gdscript godot godot-addon godot-combat godot-fighting godot-plugin godotengine
Last synced: about 1 month ago
JSON representation
Fray – Godot Combat Framework
- Host: GitHub
- URL: https://github.com/pyxus/fray
- Owner: Pyxus
- License: mit
- Created: 2021-10-26T04:48:19.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2024-01-30T00:53:39.000Z (10 months ago)
- Last Synced: 2024-10-10T11:04:45.184Z (about 1 month ago)
- Topics: fighting-game-engine, game-development, gdscript, godot, godot-addon, godot-combat, godot-fighting, godot-plugin, godotengine
- Language: GDScript
- Homepage: https://fray.pyxus.dev
- Size: 21.8 MB
- Stars: 255
- Watchers: 11
- Forks: 11
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Fray
![Fray status](https://img.shields.io/badge/status-alpha-red) ![Godot version](https://img.shields.io/badge/godot-v4.2+-blue) ![License](https://img.shields.io/badge/license-MIT-informational)
## 📖 About
Fray is a modular Godot 4 addon designed to aid in the development of action-oriented games. It offers solutions for combatant state management, complex input detection, input buffering, and hitbox organization. If your project requires any of these functionalities you may benefit from using Fray.
## ⚠️ IMPORTANT
**Fray is currently in an alpha state.**
What does this mean?
- It has not been tested rigorously enough for me to be comfortable recommending it for use in a serious project.
- The documentation is incomplete and there is a lack of good examples.
- Lastly, it is still susceptible to refactors, meaning the API is subject to change.
That being said, a significant portion of Fray is functional, with any remaining bugs likely being simple oversights rather than major design flaws. If these issues do not concern you, and/or you are interested in testing the framework, please feel free to explore!
## ✨ Core Features
### Resource-Based Hierarchical State Machine
- Build state machines declaratively in code using the included builder class.
- Control state transitions using callable transition prerequisites and advance conditions.
- Extend states and transitions to further control state flow and/or encapsulate game behavior within different states.
[comment]:
### Composite Input Detection
- Declaratively describe the many composite inputs featured in action / fighting games ([directional inputs](https://mugen.fandom.com/wiki/Command_input#Directional_inputs), [motion inputs](https://mugen.fandom.com/wiki/Command_input#Motion_input), [charged inputs](https://clips.twitch.tv/FuriousObservantOrcaGrammarKing-c1wo4zhroMVZ9I7y), and [sequence inputs](https://mugen.fandom.com/wiki/Command_input#Sequence_inputs)) using component based approach.
- Check defined inputs anywhere using included input singleton.
[comment]:
### Hitbox management
- Define hitboxes using template class with extendable attributes resource.
- Organize hitboxes using hit states and hit state managers.
- Key active hitboxes in animation player using a single property for easier timeline management.
[comment]:
## 📚 Getting Started
Fray comes with comprehensive documentation integrated with Godot 4's documentation comments. This means you can access explanations for classes and functions directly within the Godot editor.
For additional guides and resources, check out the [official Fray wiki](https://fray.pyxus.dev).
## 📦 Installation
### GitHub Release (Recommended, Stable)
Coming soon...
### Asset Library (Recommended, Stable)
Coming soon...
### GitHub Branch (Latest, Unstable, Godot 4.2+)
1. Downloaded the [latest main branch](https://github.com/Pyxus/fray/archive/refs/heads/main.zip)
2. Extract the zip file and move its contents to `addons/fray`.
3. Enable the addon inside `Project/Project Settings/Plugins`---
If you would like to know more about installing plugins see the [Official Godot Docs](https://docs.godotengine.org/en/stable/tutorials/plugins/editor/installing_plugins.html).
## 📃 Credits
- Controller Button Images :