Scylla Framework
  • API Reference
Search Results for

    Show / Hide Table of Contents
    • Scylla.Input
      • AutoResolveChange
      • AutoResolveResult
      • BindingConflict
      • BindingStorageSettings
      • BindingStorageType
      • BridgeSettings
      • BufferedInput
      • ConfigActionEntry
      • ConfigActionGroup
      • ConfigBindingEntry
      • ConfigConflict
      • ConfigGroupExclusion
      • ConfigLayout
      • ConfigLayout.Builder
      • ConfigLayoutColumnDefinition
      • ConfigLayoutConflictScope
      • ConfigLayoutDefinition
      • ConfigLayoutExclusionDefinition
      • ConfigLayoutGroupDefinition
      • ConfigLayoutGroupMode
      • ConfigLayoutMemberReference
      • ConfigLayoutValidationMessage
      • ConfigLayoutValidationSeverity
      • ConfigSchemeGroup
      • ContextConflictScope
      • ContextValidationMessage
      • ContextValidationSeverity
      • ControlScheme
      • ControlSchemeChangedEvent
      • ControlSchemeManager
      • ControlSchemeType
      • GamepadButton
      • GamepadType
      • IBindingStorage
      • IControlSchemeManager
      • IInputActionManager
      • IInputBindingManager
      • IInputBridgeManager
      • IInputBufferManager
      • IInputConflictScope
      • IInputContextManager
      • IInputControlAliasResolver
      • IInputHintsManager
      • IInputListener
      • IInputRebindabilityProvider
      • IScyllaInputBridge
      • IdentityControlAliasResolver
      • InputActionCanceledEvent
      • InputActionManager
      • InputActionMapNode
      • InputActionMetadata
      • InputActionNode
      • InputActionPerformedEvent
      • InputActionStartedEvent
      • InputActionsDocument
      • InputActionsDocumentIO
      • InputActionsJSONKeys
      • InputAnnotation
      • InputAssetInfo
      • InputBindingGroups
      • InputBindingManager
      • InputBindingMetadata
      • InputBindingNode
      • InputBindingsLoadedEvent
      • InputBindingsSavedEvent
      • InputBridgeManager
      • InputBridgeQueryMode
      • InputBufferConsumedEvent
      • InputBufferManager
      • InputBufferedEvent
      • InputCodegenSettings
      • InputCompositeUtil
      • InputConflictEngine
      • InputConflictPair
      • InputConflictPolicy
      • InputConflictReason
      • InputConflictRecord
      • InputConflictRecordBuilder
      • InputConflictResolution
      • InputConflictSet
      • InputContext
      • InputContextChangedEvent
      • InputContextDefinition
      • InputContextExclusivity
      • InputContextManager
      • InputContextPoppedEvent
      • InputContextPushedEvent
      • InputControlAliasEntry
      • InputControlAliasResolver
      • InputControlAliasScope
      • InputControlPathUtil
      • InputControlSchemeNode
      • InputDeviceChangedEvent
      • InputDeviceConnectedEvent
      • InputDeviceDisconnectedEvent
      • InputDeviceType
      • InputDeviceUtil
      • InputDisabledEvent
      • InputEnabledEvent
      • InputEventType
      • InputHint
      • InputHintChangedEvent
      • InputHintsManager
      • InputIconSet
      • InputIconSet.IconMapping
      • InputIconSetChangedEvent
      • InputInteractionKind
      • InputInteractionResolver
      • InputInteractionSignature
      • InputJSONMember
      • InputJSONNode
      • InputJSONNodeReader
      • InputJSONNodeType
      • InputJSONNodeWriter
      • InputLoggingSettings
      • InputMapMetadata
      • InputMetadataRebindabilityProvider
      • InputMetadataReconciler
      • InputMetadataRecordKind
      • InputModifierMetadataUtil
      • InputOrphanRecord
      • InputRebindCancelledEvent
      • InputRebindCompletedEvent
      • InputRebindManager
      • InputRebindOperation
      • InputRebindStartedEvent
      • InputRebindUtils
      • InputRebindability
      • InputReconcileAction
      • InputReconcileOptions
      • InputReconcileReport
      • InputReconcileReport.Entry
      • InputSchemeDeviceNode
      • InputSchemeMetadata
      • JSONFileBindingStorage
      • ManagedRebindCancelledEvent
      • ManagedRebindCompletedEvent
      • ManagedRebindDataRefreshedEvent
      • ManagedRebindStartedEvent
      • PlayerPrefsBindingStorage
      • RebindMode
      • RebindSettings
      • ScyllaInput
      • ScyllaInput.Meta
      • ScyllaInputAction
      • ScyllaInputActionMap
      • ScyllaInputActionsMetadata
      • ScyllaInputActionsMetadataMigrator
      • ScyllaInputBinding
      • ScyllaInputConfiguration
      • ScyllaInputContextConfiguration
      • ScyllaKey
      • ScyllaKeyConverter
      • ScyllaModifier
      • UnityInputSystemBridge
    • Scylla.Input.Editor
      • DeviceStatusWidget
      • IconMappingDrawer
      • InputIconSetEditor
      • ScyllaInputActionsMetadataEditor
      • ScyllaInputConfigurationEditor
      • ScyllaInputContextConfigurationEditor
      • ScyllaInputDependencyProvider
      • ScyllaInputEditor
      • ScyllaInputGameProfile
      • ScyllaInputGameProfiles
      • ScyllaInputMenuItems
      • ScyllaInputWizard

    Class ScyllaInputConfiguration

    ScriptableObject configuration asset for the Scylla Input module. Create one instance via Assets → Create → Scylla → Input → Input Configuration and assign it to the ScyllaInput component in the Inspector.

    Inheritance
    object
    Object
    ScriptableObject
    ScyllaConfiguration
    ScyllaInputConfiguration
    Inherited Members
    ScyllaConfiguration.CONFIG_FOLDER
    ScyllaConfiguration.LABEL_CONFIG_FILES
    ScyllaConfiguration.LABEL_CONFIG_FILE
    ScyllaConfiguration.LABEL_GLOBAL
    ScyllaConfiguration.LABEL_CORE
    ScyllaConfiguration.LABEL_CONFIG_FILES_IN_DBG
    ScyllaConfiguration.LABEL_CONFIG_FILES_IN_PRD
    ScyllaConfiguration.LABEL_CONFIG_FILE_IN_DBG
    ScyllaConfiguration.LABEL_CONFIG_FILE_IN_PRD
    ScyllaConfiguration.LABEL_VALIDATION
    ScyllaConfiguration.LABEL_ERROR
    ScyllaConfiguration.LABEL_WARNING
    ScyllaConfiguration.LABEL_METADATA
    ScyllaConfiguration.LABEL_CONFIGURATION
    ScyllaConfiguration.LABEL_ACTIONS
    ScyllaConfiguration.LABEL_VALIDATE
    ScyllaConfiguration.LABEL_RESET_TO_DEFAULTS
    ScyllaConfiguration.LABEL_APPLY_NOW
    ScyllaConfiguration.LABEL_RESOURCE_PATH
    ScyllaConfiguration.LABEL_ASSET_PATH
    ScyllaConfiguration.LABEL_EXPORT_CONFIG_FILE
    ScyllaConfiguration.LABEL_TO_USER_DOCUMENTS
    ScyllaConfiguration.LABEL_TO_APP_FOLDER
    ScyllaConfiguration.MSG_RESET_CONFIRM_TITLE
    ScyllaConfiguration.MSG_RESET_CONFIRM_BODY
    ScyllaConfiguration.MSG_RESET_BUTTON
    ScyllaConfiguration.MSG_CANCEL_BUTTON
    ScyllaConfiguration.MSG_OK_BUTTON
    ScyllaConfiguration.MSG_VALIDATION_TITLE
    ScyllaConfiguration.MSG_EXPORT_CONFIG_TITLE
    ScyllaConfiguration.MSG_OVERWRITE_BUTTON
    ScyllaConfiguration.ConfigFileEnabledInDebugBuild
    ScyllaConfiguration.ConfigFileEnabledInProductionBuild
    ScyllaConfiguration.CreateConfigFile
    ScyllaConfiguration.ConfigurationName
    ScyllaConfiguration.Description
    ScyllaConfiguration.IsConfigFileEnabledForCurrentBuild()
    ScyllaConfiguration.IsValid()
    ScyllaConfiguration.GetConfigFileBaseName()
    ScriptableObject.CreateInstance(string)
    ScriptableObject.CreateInstance(Type)
    ScriptableObject.CreateInstance<T>()
    Object.GetEntityId()
    Object.GetHashCode()
    Object.Equals(object)
    Object.InstantiateAsync<T>(T)
    Object.InstantiateAsync<T>(T, Transform)
    Object.InstantiateAsync<T>(T, Vector3, Quaternion)
    Object.InstantiateAsync<T>(T, Transform, Vector3, Quaternion)
    Object.InstantiateAsync<T>(T, int)
    Object.InstantiateAsync<T>(T, int, Transform)
    Object.InstantiateAsync<T>(T, int, Vector3, Quaternion)
    Object.InstantiateAsync<T>(T, int, ReadOnlySpan<Vector3>, ReadOnlySpan<Quaternion>)
    Object.InstantiateAsync<T>(T, int, Transform, Vector3, Quaternion)
    Object.InstantiateAsync<T>(T, int, Transform, Vector3, Quaternion, CancellationToken)
    Object.InstantiateAsync<T>(T, int, Transform, ReadOnlySpan<Vector3>, ReadOnlySpan<Quaternion>)
    Object.InstantiateAsync<T>(T, int, Transform, ReadOnlySpan<Vector3>, ReadOnlySpan<Quaternion>, CancellationToken)
    Object.InstantiateAsync<T>(T, InstantiateParameters, CancellationToken)
    Object.InstantiateAsync<T>(T, int, InstantiateParameters, CancellationToken)
    Object.InstantiateAsync<T>(T, Vector3, Quaternion, InstantiateParameters, CancellationToken)
    Object.InstantiateAsync<T>(T, int, Vector3, Quaternion, InstantiateParameters, CancellationToken)
    Object.InstantiateAsync<T>(T, int, ReadOnlySpan<Vector3>, ReadOnlySpan<Quaternion>, InstantiateParameters, CancellationToken)
    Object.Instantiate(Object, Vector3, Quaternion)
    Object.Instantiate(Object, Vector3, Quaternion, Transform)
    Object.Instantiate(Object)
    Object.Instantiate(Object, Scene)
    Object.Instantiate<T>(T, InstantiateParameters)
    Object.Instantiate<T>(T, Vector3, Quaternion, InstantiateParameters)
    Object.Instantiate(Object, Transform)
    Object.Instantiate(Object, Transform, bool)
    Object.Instantiate<T>(T)
    Object.Instantiate<T>(T, Vector3, Quaternion)
    Object.Instantiate<T>(T, Vector3, Quaternion, Transform)
    Object.Instantiate<T>(T, Transform)
    Object.Instantiate<T>(T, Transform, bool)
    Object.Destroy(Object, float)
    Object.Destroy(Object)
    Object.DestroyImmediate(Object, bool)
    Object.DestroyImmediate(Object)
    Object.FindObjectsByType(Type)
    Object.FindObjectsByType(Type, FindObjectsInactive)
    Object.DontDestroyOnLoad(Object)
    Object.FindAnyObjectByType<T>()
    Object.FindAnyObjectByType<T>(FindObjectsInactive)
    Object.FindObjectsByType<T>()
    Object.FindObjectsByType<T>(FindObjectsInactive)
    Object.FindAnyObjectByType(Type)
    Object.FindAnyObjectByType(Type, FindObjectsInactive)
    Object.ToString()
    Object.name
    Object.hideFlags
    object.Equals(object, object)
    object.GetType()
    object.ReferenceEquals(object, object)
    Namespace: Scylla.Input
    Assembly: ScyllaInput.dll
    Syntax
    [CreateAssetMenu(fileName = "Scylla Input Configuration", menuName = "Scylla/Input/Input Configuration")]
    public sealed class ScyllaInputConfiguration : ScyllaConfiguration
    Remarks

    This asset bundles all Input module settings into a single serialized object that can be shared between Editor, development, and production environments. The settings are applied to the running Input module during initialization via Apply().

    Settings are organized into six named groups that each map to a dedicated nested class:

    • Control Scheme Detection - thresholds and cooldown for keyboard/gamepad auto-detection.
    • Input Buffering - optional buffering window and queue capacity for action timing leniency.
    • Binding Storage - storage backend, folder path, and auto-save/-load behavior via BindingStorageSettings.
    • Rebind Settings - timeout, cancel path, and mouse exclusions via RebindSettings.
    • Bridge Configuration - multi-bridge query mode and conflict resolution via BridgeSettings.
    • Input Logging - per-category log verbosity flags via InputLoggingSettings.

    All numeric settings can be overridden at runtime from a JSON config file via the Scylla config file system. ScriptableObject asset references (icon sets) are excluded from config-file overrides because they cannot be serialized as JSON paths.

    Use LoadDefault() to load the asset from Resources at runtime, or call ExportToConfigFile() to produce a Scylla.Core.Util.File.ConfigFile template that players or server operators can edit externally.

    Fields

    BASE_INPUT_ACTIONS_PATH

    Declaration
    public const string BASE_INPUT_ACTIONS_PATH = "Input Actions/Scylla Input Actions - Base"
    Field Value
    Type Description
    string

    CONFIG_FILENAME

    Filename for auto-loading this configuration.

    Declaration
    public const string CONFIG_FILENAME = "Scylla Input Configuration"
    Field Value
    Type Description
    string

    DEFAULT_FALLBACK_ICON_SET_ID

    Declaration
    public const string DEFAULT_FALLBACK_ICON_SET_ID = "gamepad_generic"
    Field Value
    Type Description
    string

    DEFAULT_INPUT_ACTIONS_PATH

    Declaration
    public const string DEFAULT_INPUT_ACTIONS_PATH = "Input Actions/Scylla Input Actions - Default"
    Field Value
    Type Description
    string

    DEFAULT_KEYBOARD_ICON_SET_ID

    Declaration
    public const string DEFAULT_KEYBOARD_ICON_SET_ID = "keyboard_mouse"
    Field Value
    Type Description
    string

    DEFAULT_NINTENDO_ICON_SET_ID

    Declaration
    public const string DEFAULT_NINTENDO_ICON_SET_ID = "gamepad_nintendo"
    Field Value
    Type Description
    string

    DEFAULT_PLAYSTATION_ICON_SET_ID

    Declaration
    public const string DEFAULT_PLAYSTATION_ICON_SET_ID = "gamepad_playstation"
    Field Value
    Type Description
    string

    DEFAULT_XBOX_ICON_SET_ID

    Declaration
    public const string DEFAULT_XBOX_ICON_SET_ID = "gamepad_xbox"
    Field Value
    Type Description
    string

    DISPLAY_NAME

    Display name for this configuration type.

    Declaration
    public const string DISPLAY_NAME = "Input Settings"
    Field Value
    Type Description
    string

    GROUP_BINDING_STORAGE

    Declaration
    public const string GROUP_BINDING_STORAGE = "Binding Storage"
    Field Value
    Type Description
    string

    GROUP_BRIDGE_SETTINGS

    Declaration
    public const string GROUP_BRIDGE_SETTINGS = "Bridge Settings"
    Field Value
    Type Description
    string

    GROUP_CONTROL_SCHEME_DETECTION

    Declaration
    public const string GROUP_CONTROL_SCHEME_DETECTION = "Control Scheme Detection"
    Field Value
    Type Description
    string

    GROUP_INPUT_BUFFERING

    Declaration
    public const string GROUP_INPUT_BUFFERING = "Input Buffering"
    Field Value
    Type Description
    string

    GROUP_INPUT_LOGGING

    Declaration
    public const string GROUP_INPUT_LOGGING = "Input Logging"
    Field Value
    Type Description
    string

    GROUP_REBIND_SETTINGS

    Declaration
    public const string GROUP_REBIND_SETTINGS = "Rebind Settings"
    Field Value
    Type Description
    string

    INPUT_ACTIONS_RESOURCES_FOLDER

    Declaration
    public const string INPUT_ACTIONS_RESOURCES_FOLDER = "Input Actions"
    Field Value
    Type Description
    string

    KEY_AUTO_DETECTION_ENABLED

    Declaration
    public const string KEY_AUTO_DETECTION_ENABLED = "AutoDetectionEnabled"
    Field Value
    Type Description
    string

    KEY_AUTO_LOAD_BINDINGS

    Declaration
    public const string KEY_AUTO_LOAD_BINDINGS = "AutoLoadBindings"
    Field Value
    Type Description
    string

    KEY_AUTO_SAVE_BINDINGS

    Declaration
    public const string KEY_AUTO_SAVE_BINDINGS = "AutoSaveBindings"
    Field Value
    Type Description
    string

    KEY_BUFFERING_ENABLED

    Declaration
    public const string KEY_BUFFERING_ENABLED = "BufferingEnabled"
    Field Value
    Type Description
    string

    KEY_DEFAULT_BRIDGE_PRIORITY

    Declaration
    public const string KEY_DEFAULT_BRIDGE_PRIORITY = "DefaultBridgePriority"
    Field Value
    Type Description
    string

    KEY_DEFAULT_BUFFER_WINDOW

    Declaration
    public const string KEY_DEFAULT_BUFFER_WINDOW = "DefaultBufferWindow"
    Field Value
    Type Description
    string

    KEY_DEFAULT_CANCEL_PATH

    Declaration
    public const string KEY_DEFAULT_CANCEL_PATH = "DefaultCancelPath"
    Field Value
    Type Description
    string

    KEY_DEFAULT_CONFLICT_RESOLUTION

    Declaration
    public const string KEY_DEFAULT_CONFLICT_RESOLUTION = "DefaultConflictResolution"
    Field Value
    Type Description
    string

    KEY_DEFAULT_PROFILE_ID

    Declaration
    public const string KEY_DEFAULT_PROFILE_ID = "DefaultProfileID"
    Field Value
    Type Description
    string

    KEY_DEFAULT_QUERY_MODE

    Declaration
    public const string KEY_DEFAULT_QUERY_MODE = "DefaultQueryMode"
    Field Value
    Type Description
    string

    KEY_EXCLUDE_MOUSE_DELTA

    Declaration
    public const string KEY_EXCLUDE_MOUSE_DELTA = "ExcludeMouseDelta"
    Field Value
    Type Description
    string

    KEY_EXCLUDE_MOUSE_POSITION

    Declaration
    public const string KEY_EXCLUDE_MOUSE_POSITION = "ExcludeMousePosition"
    Field Value
    Type Description
    string

    KEY_GAMEPAD_STICK_THRESHOLD

    Declaration
    public const string KEY_GAMEPAD_STICK_THRESHOLD = "GamepadStickThreshold"
    Field Value
    Type Description
    string

    KEY_GAMEPAD_TRIGGER_THRESHOLD

    Declaration
    public const string KEY_GAMEPAD_TRIGGER_THRESHOLD = "GamepadTriggerThreshold"
    Field Value
    Type Description
    string

    KEY_JSON_STORAGE_FOLDER

    Declaration
    public const string KEY_JSON_STORAGE_FOLDER = "JSONStorageFolder"
    Field Value
    Type Description
    string

    KEY_LOG_BINDING_CHANGES

    Declaration
    public const string KEY_LOG_BINDING_CHANGES = "LogBindingChanges"
    Field Value
    Type Description
    string

    KEY_LOG_CONTEXT_CHANGES

    Declaration
    public const string KEY_LOG_CONTEXT_CHANGES = "LogContextChanges"
    Field Value
    Type Description
    string

    KEY_LOG_SCHEME_CHANGES

    Declaration
    public const string KEY_LOG_SCHEME_CHANGES = "LogSchemeChanges"
    Field Value
    Type Description
    string

    KEY_MAX_BUFFERED_INPUTS

    Declaration
    public const string KEY_MAX_BUFFERED_INPUTS = "MaxBufferedInputs"
    Field Value
    Type Description
    string

    KEY_MOUSE_DELTA_THRESHOLD

    Declaration
    public const string KEY_MOUSE_DELTA_THRESHOLD = "MouseDeltaThreshold"
    Field Value
    Type Description
    string

    KEY_SCHEME_SWITCH_COOLDOWN

    Declaration
    public const string KEY_SCHEME_SWITCH_COOLDOWN = "SchemeSwitchCooldown"
    Field Value
    Type Description
    string

    KEY_STORAGE_TYPE

    Declaration
    public const string KEY_STORAGE_TYPE = "StorageType"
    Field Value
    Type Description
    string

    KEY_TIMEOUT

    Declaration
    public const string KEY_TIMEOUT = "Timeout"
    Field Value
    Type Description
    string

    LABEL_BINDING_STORAGE

    Declaration
    public const string LABEL_BINDING_STORAGE = "Binding Storage"
    Field Value
    Type Description
    string

    LABEL_BRIDGE_CONFIGURATION

    Declaration
    public const string LABEL_BRIDGE_CONFIGURATION = "Bridge Configuration"
    Field Value
    Type Description
    string

    LABEL_CONTROL_SCHEME_DETECTION

    Declaration
    public const string LABEL_CONTROL_SCHEME_DETECTION = "Control Scheme Detection"
    Field Value
    Type Description
    string

    LABEL_DEFAULT_ICON_SETS

    Declaration
    public const string LABEL_DEFAULT_ICON_SETS = "Default Icon Sets"
    Field Value
    Type Description
    string

    LABEL_INPUT_ACTIONS

    Declaration
    public const string LABEL_INPUT_ACTIONS = "Input Actions"
    Field Value
    Type Description
    string

    LABEL_INPUT_BUFFERING

    Declaration
    public const string LABEL_INPUT_BUFFERING = "Input Buffering"
    Field Value
    Type Description
    string

    LABEL_INPUT_LOGGING

    Declaration
    public const string LABEL_INPUT_LOGGING = "Input Logging"
    Field Value
    Type Description
    string

    LABEL_REBINDING

    Declaration
    public const string LABEL_REBINDING = "Rebinding"
    Field Value
    Type Description
    string

    MSG_CONFIGURATION_APPLIED

    Declaration
    public const string MSG_CONFIGURATION_APPLIED = "ScyllaInputConfiguration applied."
    Field Value
    Type Description
    string

    MSG_INSTANCE_NOT_AVAILABLE

    Declaration
    public const string MSG_INSTANCE_NOT_AVAILABLE = "ScyllaInput instance not available. Configuration will be applied when the module initializes."
    Field Value
    Type Description
    string

    MSG_INVALID_BINDING_STORAGE_TYPE

    Declaration
    public const string MSG_INVALID_BINDING_STORAGE_TYPE = "Invalid BindingStorageType value"
    Field Value
    Type Description
    string

    MSG_INVALID_CONFLICT_RESOLUTION

    Declaration
    public const string MSG_INVALID_CONFLICT_RESOLUTION = "Invalid InputConflictResolution value"
    Field Value
    Type Description
    string

    MSG_INVALID_QUERY_MODE

    Declaration
    public const string MSG_INVALID_QUERY_MODE = "Invalid InputBridgeQueryMode value"
    Field Value
    Type Description
    string

    NESTED_GROUP_BINDING_STORAGE

    Declaration
    public const string NESTED_GROUP_BINDING_STORAGE = "BindingStorage"
    Field Value
    Type Description
    string

    NESTED_GROUP_BRIDGE_SETTINGS

    Declaration
    public const string NESTED_GROUP_BRIDGE_SETTINGS = "BridgeSettings"
    Field Value
    Type Description
    string

    NESTED_GROUP_INPUT_LOGGING

    Declaration
    public const string NESTED_GROUP_INPUT_LOGGING = "InputLogging"
    Field Value
    Type Description
    string

    NESTED_GROUP_REBIND_SETTINGS

    Declaration
    public const string NESTED_GROUP_REBIND_SETTINGS = "RebindSettings"
    Field Value
    Type Description
    string

    Properties

    AutoDetectionEnabled

    Gets whether the Input module automatically detects which control scheme is in use (keyboard/mouse vs. gamepad) based on incoming input events. When false, the active scheme must be set programmatically via the control scheme manager. Defaults to true.

    Declaration
    public bool AutoDetectionEnabled { get; }
    Property Value
    Type Description
    bool

    BindingStorage

    Gets the binding storage settings that govern how player binding overrides are persisted and loaded. See BindingStorageSettings for individual options.

    Declaration
    public BindingStorageSettings BindingStorage { get; }
    Property Value
    Type Description
    BindingStorageSettings

    BufferingEnabled

    Gets whether the input buffering system is active. When true, inputs received just before or during an action's active window are buffered and replayed within the DefaultBufferWindow time frame. Useful for fighting games or any game requiring lenient input timing. Defaults to false.

    Declaration
    public bool BufferingEnabled { get; }
    Property Value
    Type Description
    bool

    DefaultBufferWindow

    Gets the duration in seconds that a buffered input remains valid and can be replayed. Inputs older than this window are discarded. Valid range: 0.05-1.0 seconds. Defaults to 0.15.

    Declaration
    public float DefaultBufferWindow { get; }
    Property Value
    Type Description
    float

    FallbackIconSet

    Gets the icon set used when no platform-specific icon set matches the active device, or when any of the platform-specific sets are null. Returns null if no fallback set has been assigned, in which case no icons will be displayed.

    Declaration
    public InputIconSet FallbackIconSet { get; }
    Property Value
    Type Description
    InputIconSet

    GamepadStickThreshold

    Gets the minimum analog stick magnitude (0-1) required for a gamepad stick event to trigger a switch to the gamepad control scheme. Prevents stick drift from causing false scheme switches. Valid range: 0.05-0.5. Defaults to 0.2.

    Declaration
    public float GamepadStickThreshold { get; }
    Property Value
    Type Description
    float

    GamepadTriggerThreshold

    Gets the minimum analog trigger value (0-1) required for a gamepad trigger event to trigger a switch to the gamepad control scheme. Valid range: 0.05-0.5. Defaults to 0.1.

    Declaration
    public float GamepadTriggerThreshold { get; }
    Property Value
    Type Description
    float

    InputActionAsset

    Gets or sets the InputActionAsset that is registered with the Unity Input System automatically when the Scylla Input module initializes. This asset defines all action maps and their default bindings. Other modules (e.g., Console, Camera) reference action maps by name from this asset.

    Declaration
    public InputActionAsset InputActionAsset { get; }
    Property Value
    Type Description
    InputActionAsset

    The registered asset, or null if none has been assigned. When null, the module attempts to load the asset from the path "Input Actions/Scylla Input Actions - Action Game" in Resources as a fallback, which is the factory asset for 3D action games.

    InputActionAssets

    Gets every InputActionAsset the module registers, in registration order.

    Declaration
    public IReadOnlyList<InputActionAsset> InputActionAssets { get; }
    Property Value
    Type Description
    IReadOnlyList<InputActionAsset>

    The assets, in order. Empty when none has been assigned.

    Remarks

    Order is precedence. A map name declared by two assets resolves to whichever was registered last, so an asset later in this list overrides an earlier one. That is what lets a project keep the shipped system actions and still replace one of their maps with its own.

    KeyboardIconSet

    Gets the icon set registered with the hints manager when the active control scheme is keyboard/mouse. Used to display contextual button prompt images in the UI. Returns null if no keyboard icon set has been assigned.

    Declaration
    public InputIconSet KeyboardIconSet { get; }
    Property Value
    Type Description
    InputIconSet

    Logging

    Gets the per-category log verbosity settings for the Input module. See InputLoggingSettings for individual flags.

    Declaration
    public InputLoggingSettings Logging { get; }
    Property Value
    Type Description
    InputLoggingSettings

    MaxBufferedInputs

    Gets the maximum number of inputs that can be held in the buffer simultaneously. When the buffer is full, the oldest buffered input is discarded to make room. Valid range: 1-20. Defaults to 10.

    Declaration
    public int MaxBufferedInputs { get; }
    Property Value
    Type Description
    int

    MouseDeltaThreshold

    Gets the minimum mouse delta magnitude (in pixels per frame) required to trigger a switch to the keyboard/mouse control scheme. Prevents minor cursor jitter from switching schemes during gamepad use. Valid range: 1-20. Defaults to 5.

    Declaration
    public float MouseDeltaThreshold { get; }
    Property Value
    Type Description
    float

    NintendoIconSet

    Gets the icon set registered with the hints manager when the active gamepad is detected as a Nintendo controller. Returns null if no Nintendo icon set has been assigned; the FallbackIconSet is used instead.

    Declaration
    public InputIconSet NintendoIconSet { get; }
    Property Value
    Type Description
    InputIconSet

    PlayStationIconSet

    Gets the icon set registered with the hints manager when the active gamepad is detected as a PlayStation controller. Returns null if no PlayStation icon set has been assigned; the FallbackIconSet is used instead.

    Declaration
    public InputIconSet PlayStationIconSet { get; }
    Property Value
    Type Description
    InputIconSet

    Rebind

    Gets the default interactive rebinding settings applied to every rebind operation. See RebindSettings for individual options.

    Declaration
    public RebindSettings Rebind { get; }
    Property Value
    Type Description
    RebindSettings

    SchemeSwitchCooldown

    Gets the minimum number of seconds that must elapse between consecutive control scheme switches. This cooldown prevents rapid toggling when the player briefly touches both a gamepad and a keyboard at the same time. Valid range: 0.1-2.0 seconds. Defaults to 0.3.

    Declaration
    public float SchemeSwitchCooldown { get; }
    Property Value
    Type Description
    float

    XboxIconSet

    Gets the icon set registered with the hints manager when the active gamepad is detected as an Xbox controller. Returns null if no Xbox icon set has been assigned; the FallbackIconSet is used instead.

    Declaration
    public InputIconSet XboxIconSet { get; }
    Property Value
    Type Description
    InputIconSet

    Methods

    Apply()

    Applies all configuration settings to the currently running Scylla Input module. Pushes values to the control scheme manager, buffer manager, hints manager, and bridge manager. Has no effect if Instance is null; a warning is logged in that case and settings will be applied during initialization when the module starts up.

    Declaration
    public override void Apply()
    Overrides
    Scylla.Core.Config.ScyllaConfiguration.Apply()

    ApplyConfigFileOverrides(ConfigFile)

    Applies overrides from a config file to input configuration fields.

    Supported groups: "Control Scheme Detection", "Input Buffering", "Binding Storage", "Rebind Settings", "Bridge Settings", "Input Logging". Excluded: ScriptableObject references (icon sets) which cannot be deserialized from JSON.

    Declaration
    public override int ApplyConfigFileOverrides(ConfigFile configFile)
    Parameters
    Type Name Description
    ConfigFile configFile

    The Scylla.Core.Util.File.ConfigFile loaded by Scylla.Core.Config.ConfigFileManager for this configuration. Will not be null when called by the framework, but implementations should guard against it for robustness.

    Returns
    Type Description
    int

    The number of config-file properties that were successfully read and written to serialized fields. A return value of 0 means no overrides were applied.

    Overrides
    Scylla.Core.Config.ScyllaConfiguration.ApplyConfigFileOverrides(Scylla.Core.Util.File.ConfigFile)

    ExportToConfigFile()

    Exports input configuration fields to a config file.

    Supported groups: "Control Scheme Detection", "Input Buffering", "Binding Storage", "Rebind Settings", "Bridge Settings", "Input Logging". Excluded: ScriptableObject references (icon sets) which cannot be serialized to JSON.

    Declaration
    public override ConfigFile ExportToConfigFile()
    Returns
    Type Description
    ConfigFile

    A new Scylla.Core.Util.File.ConfigFile populated with the current configuration values, ready for serialization to JSON via Scylla.Core.Util.File.ConfigFile.ToJSON().

    Overrides
    Scylla.Core.Config.ScyllaConfiguration.ExportToConfigFile()

    GetConfigFileName()

    Returns the display name used as the key for loading and saving the JSON config file associated with this configuration type.

    The returned name should follow the Scylla convention "Scylla [Name] Configuration" (e.g. "Scylla Core Configuration") so that Scylla.Core.Config.ScyllaConfiguration.GetConfigFileBaseName() can derive the compact base name ("Core") used for the actual JSON filename on disk. Override this method in concrete subclasses that support config-file overrides; the default returns null, which disables config-file support for that configuration type.

    Declaration
    public override string GetConfigFileName()
    Returns
    Type Description
    string

    The full configuration name string (e.g. "Scylla Core Configuration"), or null if this configuration type does not participate in the config-file system.

    Overrides
    Scylla.Core.Config.ScyllaConfiguration.GetConfigFileName()

    GetIconSetForGamepad(GamepadType)

    Returns the InputIconSet that corresponds to the specified gamepad type. If the matching platform-specific set is not assigned, the FallbackIconSet is returned instead.

    Declaration
    public InputIconSet GetIconSetForGamepad(GamepadType gamepadType)
    Parameters
    Type Name Description
    GamepadType gamepadType

    The type of gamepad to retrieve an icon set for. Generic and Steam gamepads fall back to the Xbox icon set.

    Returns
    Type Description
    InputIconSet

    The assigned icon set for the given gamepad type, or FallbackIconSet when the platform-specific set is null. May return null if both the platform set and the fallback set are unassigned.

    GetIconSetForScheme(ControlSchemeType, GamepadType)

    Returns the InputIconSet appropriate for the given control scheme and, when the scheme is gamepad, the specific gamepad type.

    Declaration
    public InputIconSet GetIconSetForScheme(ControlSchemeType schemeType, GamepadType gamepadType = GamepadType.Generic)
    Parameters
    Type Name Description
    ControlSchemeType schemeType

    The active control scheme. Use KeyboardMouse for keyboard/mouse input or Gamepad for controller input. Unknown or unrecognized values return FallbackIconSet.

    GamepadType gamepadType

    The specific gamepad family, used only when schemeType is Gamepad. Defaults to Generic.

    Returns
    Type Description
    InputIconSet

    The matching InputIconSet, or FallbackIconSet when no platform-specific set is assigned. May return null if both the matching set and the fallback set are unassigned.

    LoadDefault()

    Loads the default ScyllaInputConfiguration asset from the Resources folder using the standard Scylla configuration path. This is the same asset that the module auto-loads during initialization when no asset is assigned in the Bootstrap Inspector.

    Declaration
    public static ScyllaInputConfiguration LoadDefault()
    Returns
    Type Description
    ScyllaInputConfiguration

    The loaded ScyllaInputConfiguration asset, or null if no asset is found at the expected Resources path.

    Reset()

    Called by Unity when the ScriptableObject is first created or when the user resets it via the Inspector context menu. Calls the base Scylla.Core.Config.ScyllaConfiguration.Reset() implementation, then attempts to auto-assign the InputActionAsset and the five default InputIconSet slots when they are currently unassigned.

    Declaration
    protected override void Reset()
    Overrides
    Scylla.Core.Config.ScyllaConfiguration.Reset()

    ResetToDefaults()

    Resets all numeric and boolean configuration fields to their built-in default values. ScriptableObject asset references (icon sets and the InputActionAsset) are intentionally preserved so that Inspector assignments are not lost.

    Declaration
    public override void ResetToDefaults()
    Overrides
    Scylla.Core.Config.ScyllaConfiguration.ResetToDefaults()

    Validate()

    Validates all configuration values and returns an array of diagnostic results. Checks include scheme-switch cooldown range, buffer window plausibility, icon set assignment, binding storage path validity, rebind timeout range, cancel path presence, and bridge priority range. Does not modify any field values.

    Declaration
    public override ConfigurationValidationResult[] Validate()
    Returns
    Type Description
    ConfigurationValidationResult[]

    An array of Scylla.Core.Config.ConfigurationValidationResult entries. An empty array indicates all values passed validation. Results may have Scylla.Core.Config.ValidationSeverity.Info, Scylla.Core.Config.ValidationSeverity.Warning, or Scylla.Core.Config.ValidationSeverity.Error severity.

    Overrides
    Scylla.Core.Config.ScyllaConfiguration.Validate()
    In this article
    Back to top Scylla Framework - Input Module API Documentation