Baltor Get started

Gallery / Godot components

Utility AI scorer with response curves

In your harnessGodot componentMIT

Score named actions from considerations mapped through response curves (linear, polynomial, logistic, step, smoothstep) with compensated products, vetoes, weights and hysteresis, and pick the best action.

Files, names only

  • ATTRIBUTION.md
  • LICENSE
  • README.md
  • baltor_test.gd
  • component.json
  • inspect_gdscript.py
  • run_tests.gd
  • test_package.py
  • tests/test_utility_ai.gd
  • utility_ai.gd
  • verification/native.json

Full files in your harness.

What it takes and gives

Class
BaltorUtilityAI, extends RefCounted
Methods
add_action(action_name: StringName, weight: float = 1.0) -> bool; add_consideration(action_name: StringName, input: Callable, minimum: float, maximum: float, curve: Response = Response.LINEAR, slope: float = 1.0, exponent: float = 1.0, x_shift: float = 0.0, y_shift: float = 0.0) -> bool; curve_value(curve: Response, x: float, slope: float = 1.0, exponent: float = 1.0, x_shift: float = 0.0,…
Signals
action_changed
Placement
res://baltor/godot_components/utility_ai/

Limits. Chooses the single best action; no weighted random among the top choices. Scores are only as good as the considerations and curve parameters, which need tuning per game. Verified with Godot 4.7.2 headless; written against the Godot 4.3 API.

Details

Kind
Godot component
Engine
Godot 4.3 or later
Files
11 files, 79.8 KB
Licence
MIT
Declared effects
reads files, runs commands
Checked with
Godot 4.7.2, headless
Checks
godot parse check only, godot gdscript tests, godot tests reject gutted component, godot editor import, godot contract reflection, godot readme usage compiles
Techniques
utility-based AI, response curves, compensation factor for multiplied considerations, hysteresis bonus
Tags
utility ai, ai, decision making, response curves, scoring, npc
Identity
library.supply.creative_originals.8fd8f7b57205a2726c38b66c.54334027fa363525
Version
54334027fa363525a9fa28d4492b39fb7bf0a013d0b14d3c4cf56366206b0e85

The version is the SHA-256 of the item your harness downloads; every file in it names its own checksum.

Something wrong with this item, its rights or its safety? Report it on the support page, or from your harness after a download.