# Noble

# Description

The Noble namespace provides core SDK functionality.

# How to Use

// Initialize the SDK
Noble::Init(PluginType::Utility, "MyUtility");

// Export and import data
Noble::ExportSDK("MyNamespace", "MyFunction", "12345");
uintptr_t ptr = Noble::ImportSDK("MyNamespace", "MyFunction");

// Get the Noble installation path
std::string path = Noble::GetPath();

# Init

void Init(PluginType plugin_type, const char* plugin_name, std::vector<std::string> const& supported_champions = {})

Initializes the SDK, must be called before using other SDK functions.

Parameter Type Description
plugin_type PluginType Plugin type, options are Champion(1) or Utility(2)
plugin_name const char* Plugin name
supported_champions std::vectorstd::string List of supported champions, default is empty
// Initialize a utility plugin
Noble::Init(PluginType::Utility, "MyUtility");

// Initialize a plugin supporting specific champions
std::vector<std::string> champions = {"Ahri", "Ashe", "Ezreal"};
Noble::Init(PluginType::Champion, "MyChampionPlugin", champions);

# ExportSDK

void ExportSDK(const char* Name, const char* Key, const char* data)

Exports data to the SDK, used for sharing functionality or information.

Parameter Type Description
Name const char* Namespace name for exported data
Key const char* Key name for exported data
data const char* Data to export
// Export data
Noble::ExportSDK("MyNamespace", "MyFunction", "12345");

# ImportSDK

uintptr_t ImportSDK(const char* Name, const char* Key)

Imports data from the SDK, returns a pointer to the imported data.

Parameter Type Description
Name const char* Namespace name of data to import
Key const char* Key name of data to import
// Import data
uintptr_t ptr = Noble::ImportSDK("MyNamespace", "MyFunction");

# GetPath

std::string GetPath()

Gets the Noble installation path.

// Get the Noble installation path
std::string path = Noble::GetPath();
Console::Add("Noble installation path: %s", path.c_str());