Rebornbuddy
Loading...
Searching...
No Matches
ff14bot.Settings.GlobalSettings Class Reference

Represents the global settings for the application, providing configuration options for various features such as logging, plugin management, and navigation. More...

Inheritance diagram for ff14bot.Settings.GlobalSettings:
ff14bot.Helpers.JsonSettings< T > ff14bot.Helpers.JsonSettings

Public Member Functions

 GlobalSettings ()
 Initializes a new instance of the GlobalSettings class.
Public Member Functions inherited from ff14bot.Helpers.JsonSettings< T >
 JsonSettings ()
 JsonSettings (string settingsFilePath)
Public Member Functions inherited from ff14bot.Helpers.JsonSettings
void Save ()
void SaveAs (string file)

Properties

override Version _revision [get]
bool PulseHotbars [get, set]
 Gets or sets a value indicating whether hotbars should play an animation when actions are executed by the bot.
string BotBasePath [get, set]
 Gets or sets the relative or absolute path where bot base files are stored.
string CombatRoutinesPath [get, set]
 Gets or sets the relative or absolute path to the directory containing combat routines.
string PluginsPath [get, set]
 Gets or sets the relative or absolute path to the directory where plugins are stored.
LogLevel LogLevel [get, set]
 Gets or sets the logging level for the application.
bool ReloadPluginsOnFileChange [get, set]
 Gets or sets a value indicating whether plugins should be automatically reloaded when changes are detected in their associated files.
bool ReloadRoutinesOnFileChange [get, set]
 Gets or sets a value indicating whether combat routines should be reloaded automatically when changes are detected in their corresponding files.
bool ReloadBotBasessOnFileChange [get, set]
 Gets or sets a value indicating whether the bot bases should be reloaded automatically when changes are detected in the associated files.
bool CloseTradeWindow [get, set]
 Gets or sets a value indicating whether the trade window should be automatically closed.
bool BlacklistPlayersWhoTradeBot [get, set]
 Gets or sets a value indicating whether players who attempt to trade with the bot should be automatically blacklisted.
bool EnableOverlay [get, set]
 Gets or sets a value indicating whether the overlay feature is enabled.
string LoginKey [get, set]
 Gets or sets the login key used for authentication within the application.
bool ShownLocaleError [get, set]
 Gets or sets a value indicating whether the locale error message has been shown to the user.
bool UseAlternativeNavigationServer [get, set]
 Gets or sets a value indicating whether to use an alternative navigation server for pathfinding and navigation-related tasks.
bool EnhanceGamelogManager [get, set]
 Gets or sets a value indicating whether the enhanced GameLogManager functionality is enabled.
Region AuthRegion [get, set]
 Gets or sets the authentication region used for login.
bool KillOldAuthSessionOnMaxSessions [get, set]
 Gets or sets a value indicating whether to terminate old authentication sessions when the maximum number of sessions is reached.
bool PreferHTTP2OverHTTP3 [get, set]
 Gets or sets a value indicating whether HTTP/2 should be prioritized over HTTP/3 for network communication.
Properties inherited from ff14bot.Helpers.JsonSettings< T >
static T Instance [get, set]
Properties inherited from ff14bot.Helpers.JsonSettings
virtual Version _revision [get]
 Override this field when you change the default values for a setting and use the UpdateDefaultValueAttribute attribute to updatethem.
static string AssemblyPath [get]
static string SettingsPath [get]
static string ItemWeightsDirectory [get]
Version Version [get, set]
string FilePath [get, set]
static string CharacterSettingsDirectory [get]

Additional Inherited Members

Static Public Member Functions inherited from ff14bot.Helpers.JsonSettings
static string GetSettingsFilePath (params string[] subPathParts)
Protected Member Functions inherited from ff14bot.Helpers.JsonSettings
 JsonSettings (string path)
void LoadFrom (string file)
void OnPropertyChanged ([CallerMemberName] string? propertyName=null)
bool SetField< T > (ref T field, T value, [CallerMemberName] string? propertyName=null)
 Call this function when updating an internal property to automatically raise the PropertyChanged event handler.
Events inherited from ff14bot.Helpers.JsonSettings
EventHandler? Reloaded
PropertyChangedEventHandler? PropertyChanged

Detailed Description

Represents the global settings for the application, providing configuration options for various features such as logging, plugin management, and navigation.

This class inherits from JsonSettings and provides a singleton instance for managing application-wide settings. It includes properties for controlling behaviors like hotbar updates, file change detection, trade window management, and logging levels. Additionally, it supports region-specific authentication and navigation server configurations.

Constructor & Destructor Documentation

◆ GlobalSettings()

ff14bot.Settings.GlobalSettings.GlobalSettings ( )

Initializes a new instance of the GlobalSettings class.

This constructor sets up the global settings by loading the configuration from a JSON file named "GlobalSettings.json". It ensures that the settings are initialized with default values and provides a centralized location for managing application-wide configurations.

Property Documentation

◆ _revision

override Version ff14bot.Settings.GlobalSettings._revision
getprotected

◆ AuthRegion

Region ff14bot.Settings.GlobalSettings.AuthRegion
getset

Gets or sets the authentication region used for login.

The Region determines the server region to connect to during authentication. If an invalid value is assigned, it defaults to Region.BestLatency.

A Region value representing the selected authentication region.

◆ BlacklistPlayersWhoTradeBot

bool ff14bot.Settings.GlobalSettings.BlacklistPlayersWhoTradeBot
getset

Gets or sets a value indicating whether players who attempt to trade with the bot should be automatically blacklisted.

When enabled, this setting ensures that any player initiating a trade with the bot will be added to the blacklist. This can help prevent unwanted interactions or disruptions during bot operations.

true if players who trade with the bot should be blacklisted; otherwise, false. The default value is true.

◆ BotBasePath

string ff14bot.Settings.GlobalSettings.BotBasePath
getset

Gets or sets the relative or absolute path where bot base files are stored.

This property specifies the directory used for locating bot base files. If the path is relative, it will be resolved against the application's assembly directory.

A string representing the path to the bot base directory. The default value is "BotBases".

◆ CloseTradeWindow

bool ff14bot.Settings.GlobalSettings.CloseTradeWindow
getset

Gets or sets a value indicating whether the trade window should be automatically closed.

true if the trade window should be closed automatically; otherwise, false.

This setting is used to control the behavior of the application when a trade window is open. If enabled, the trade window will be closed automatically, which can help prevent interruptions during bot operations.

◆ CombatRoutinesPath

string ff14bot.Settings.GlobalSettings.CombatRoutinesPath
getset

Gets or sets the relative or absolute path to the directory containing combat routines.

This property specifies the location where combat routines are stored. If the path is relative, it will be resolved against the application's base directory. The default value is "Routines".

◆ EnableOverlay

bool ff14bot.Settings.GlobalSettings.EnableOverlay
getset

Gets or sets a value indicating whether the overlay feature is enabled.

true if the overlay is enabled; otherwise, false.

The overlay feature provides additional visual elements or information on top of the game interface. This setting can be toggled to enable or disable the overlay functionality.

◆ EnhanceGamelogManager

bool ff14bot.Settings.GlobalSettings.EnhanceGamelogManager
getset

Gets or sets a value indicating whether the enhanced GameLogManager functionality is enabled.

When enabled, this property applies a memory patch to enhance the behavior of the GameLogManager. Disabling it removes the applied patch. This feature is useful for improving logging capabilities or modifying the default behavior of the GameLogManager.

true if the enhanced GameLogManager functionality is enabled; otherwise, false. The default value is true.

◆ KillOldAuthSessionOnMaxSessions

bool ff14bot.Settings.GlobalSettings.KillOldAuthSessionOnMaxSessions
getset

Gets or sets a value indicating whether to terminate old authentication sessions when the maximum number of sessions is reached.

This property is used during the authentication process to determine if older sessions should be invalidated when the session limit is exceeded. It is particularly useful for managing session conflicts in multi-login scenarios.

true if old authentication sessions should be terminated; otherwise, false. The default value is true.

◆ LoginKey

string ff14bot.Settings.GlobalSettings.LoginKey
getset

Gets or sets the login key used for authentication within the application.

This property stores the key required for user authentication and is utilized during the login process. It is updated dynamically based on user input in the login window and is accessed by various components, such as the login task.

◆ LogLevel

LogLevel ff14bot.Settings.GlobalSettings.LogLevel
getset

Gets or sets the logging level for the application.

This property determines the verbosity of log messages generated by the application. The available levels are defined in the LogLevel enumeration, ranging from LogLevel.None (no logging) to LogLevel.Diagnostic (detailed diagnostic logs).

The default value is LogLevel.Diagnostic.

◆ PluginsPath

string ff14bot.Settings.GlobalSettings.PluginsPath
getset

Gets or sets the relative or absolute path to the directory where plugins are stored.

This property specifies the location for plugin files used by the application. If the path is relative, it will be resolved against the application's base directory.

◆ PreferHTTP2OverHTTP3

bool ff14bot.Settings.GlobalSettings.PreferHTTP2OverHTTP3
getset

Gets or sets a value indicating whether HTTP/2 should be prioritized over HTTP/3 for network communication.

true if HTTP/2 is prioritized over HTTP/3; otherwise, false.

By default, the application uses HTTP/3 for network communication. However, on some networks, HTTP/3 may be unstable or experience delays before falling back to HTTP/2. Enabling this setting allows the application to prioritize HTTP/2 as the primary protocol, bypassing potential issues with HTTP/3.

◆ PulseHotbars

bool ff14bot.Settings.GlobalSettings.PulseHotbars
getset

Gets or sets a value indicating whether hotbars should play an animation when actions are executed by the bot.

true if hotbars should play an animation; otherwise, false.

Enabling this setting allows hotbars to visually animate when actions are executed by the bot. Note that there is a small performance penalty associated with using this setting.

◆ ReloadBotBasessOnFileChange

bool ff14bot.Settings.GlobalSettings.ReloadBotBasessOnFileChange
getset

Gets or sets a value indicating whether the bot bases should be reloaded automatically when changes are detected in the associated files.

true if bot bases should be reloaded on file changes; otherwise, false.

This property is used to enable or disable the automatic reloading of bot bases when file changes are detected in the directory specified by BotManager.BotBaseDirectory. It is utilized by the Clio.Utilities.AssemblyLoader<T> to monitor file changes and trigger the reload process.

◆ ReloadPluginsOnFileChange

bool ff14bot.Settings.GlobalSettings.ReloadPluginsOnFileChange
getset

Gets or sets a value indicating whether plugins should be automatically reloaded when changes are detected in their associated files.

When set to true, the application monitors the plugin directory for file changes and reloads plugins dynamically. This can be useful during development or when updating plugins without restarting the application. However, enabling this feature may have a performance impact due to continuous file monitoring.

true if plugins should be reloaded on file changes; otherwise, false. The default value is false.

◆ ReloadRoutinesOnFileChange

bool ff14bot.Settings.GlobalSettings.ReloadRoutinesOnFileChange
getset

Gets or sets a value indicating whether combat routines should be reloaded automatically when changes are detected in their corresponding files.

This property is used to enable or disable the automatic reloading of combat routines when file changes are detected in the directory specified by GlobalSettings.CombatRoutinesPath. It is particularly useful during development or when updating routines without restarting the application.

true if combat routines should be reloaded on file changes; otherwise, false. The default value is false.

◆ ShownLocaleError

bool ff14bot.Settings.GlobalSettings.ShownLocaleError
getset

Gets or sets a value indicating whether the locale error message has been shown to the user.

This property is used to track whether the application has already displayed a warning about running the game in a non-English language. If set to false, the warning will be displayed, and the property will be updated to true to prevent repeated notifications.

true if the locale error message has been shown; otherwise, false.

◆ UseAlternativeNavigationServer

bool ff14bot.Settings.GlobalSettings.UseAlternativeNavigationServer
getset

Gets or sets a value indicating whether to use an alternative navigation server for pathfinding and navigation-related tasks.

true if the alternative navigation server should be used; otherwise, false.

This setting can be used to switch between the default navigation server and an alternative one, which may be beneficial in cases where the default server is unavailable or less optimal. May cause issues as the alternative server is sometimes out of date compared to the native server