<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.quasar-rce.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Wikiadmin</id>
	<title>Quasar-RCE - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.quasar-rce.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Wikiadmin"/>
	<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php/Special:Contributions/Wikiadmin"/>
	<updated>2026-04-05T17:08:13Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=MediaWiki:Sidebar&amp;diff=94</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=MediaWiki:Sidebar&amp;diff=94"/>
		<updated>2025-03-24T01:56:43Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: removing &amp;#039;contents&amp;#039; for visual alignment&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
* navigation&lt;br /&gt;
** mainpage|mainpage-description&lt;br /&gt;
** vendetta|Vendetta Online&lt;br /&gt;
** fate|Fate&lt;br /&gt;
** firefly|Firefly&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
** randompage-url|randompage&lt;br /&gt;
* SEARCH&lt;br /&gt;
* TOOLBOX&lt;br /&gt;
* LANGUAGES&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta&amp;diff=93</id>
		<title>Vendetta</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta&amp;diff=93"/>
		<updated>2025-03-24T01:55:32Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: contents page for Vendetta Online subjects&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[vendetta/neoloader|Neoloader]] - An advanced mod loader and management system for Vendetta Online &amp;lt;br /&amp;gt;&lt;br /&gt;
[[vendetta/babel|Babel]] - A basic library making it easy for mods to provide localized translations &amp;lt;br /&amp;gt;&lt;br /&gt;
[[vendetta/resound|Resound]] - An expandable recreation of Vendetta Online&#039;s music system &amp;lt;br /&amp;gt;&lt;br /&gt;
[[vendetta/helium|Helium]] - Advanced interface library &amp;lt;br /&amp;gt;&lt;br /&gt;
[[vendetta/quasar|Quasar]] - A ground-up reimagining of the Vendetta Online interface &amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=MediaWiki:Sidebar&amp;diff=92</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=MediaWiki:Sidebar&amp;diff=92"/>
		<updated>2025-03-24T01:54:16Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: Adding primary navigation options to sidebar.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
* navigation&lt;br /&gt;
** mainpage|mainpage-description&lt;br /&gt;
** vendetta|Vendetta Online contents&lt;br /&gt;
** fate|FATE contents&lt;br /&gt;
** firefly|Firefly&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
** randompage-url|randompage&lt;br /&gt;
* SEARCH&lt;br /&gt;
* TOOLBOX&lt;br /&gt;
* LANGUAGES&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Main_Page&amp;diff=68</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Main_Page&amp;diff=68"/>
		<updated>2025-03-04T04:03:29Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: /* Welcome to the Quasar-RCE wiki! */ removed the old website&amp;#039;s link, which will be taken offline soon&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Welcome to the Quasar-RCE wiki! ==&lt;br /&gt;
This is (currently) a conglomerate wiki for several individual projects. See each section for more details below.&lt;br /&gt;
&lt;br /&gt;
== QRCE Subwikis ==&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align: left; font-size:94%; width:100%;&amp;quot;&amp;gt; &amp;lt;!-- Contains everything --&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
&amp;lt;div style=&amp;quot;display: flex; justify-content: space-between; width: 100%;&amp;quot;&amp;gt; &amp;lt;!-- First row --&amp;gt;&lt;br /&gt;
	&amp;lt;div style=&amp;quot;width: 49%;&amp;quot;&amp;gt; &amp;lt;!-- Left side first box --&amp;gt;&lt;br /&gt;
		&amp;lt;div style=&amp;quot;border: solid #aaa 1px; margin-bottom:1em; background: #EDFEFE; padding: 4px; spacing: 0px;&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;div style=&amp;quot;font-size:115%;border-bottom:1px dotted gray;&amp;quot;&amp;gt;Vendetta Online&amp;lt;/div&amp;gt;&lt;br /&gt;
			[[vendetta/neoloader|Neoloader]] - An advanced mod loader and management system for Vendetta Online &amp;lt;br /&amp;gt;&lt;br /&gt;
			[[vendetta/babel|Babel]] - A basic library making it easy for mods to provide localized translations &amp;lt;br /&amp;gt;&lt;br /&gt;
			[[vendetta/resound|Resound]] - An expandable recreation of Vendetta Online&#039;s music system &amp;lt;br /&amp;gt;&lt;br /&gt;
			[[vendetta/helium|Helium]] - Advanced interface library &amp;lt;br /&amp;gt;&lt;br /&gt;
			[[vendetta/quasar|Quasar]] - A ground-up reimagining of the Vendetta Online interface &amp;lt;br /&amp;gt;&lt;br /&gt;
		&amp;lt;/div&amp;gt;&lt;br /&gt;
	&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;div style=&amp;quot;width: 49%;&amp;quot;&amp;gt; &amp;lt;!-- Right side first box --&amp;gt;&lt;br /&gt;
		&amp;lt;div style=&amp;quot;border: solid #aaa 1px; margin-bottom:1em; background: #EDFEFE; padding: 4px; spacing: 0px;&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;div style=&amp;quot;font-size:115%;border-bottom:1px dotted gray;&amp;quot;&amp;gt;Clickteam Fusion&amp;lt;/div&amp;gt;&lt;br /&gt;
			[[Firefly]] - Community documentation for the Firefly extension &amp;lt;br /&amp;gt;&lt;br /&gt;
		&amp;lt;/div&amp;gt;&lt;br /&gt;
	&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt; &amp;lt;!-- End of first row --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;display: flex; justify-content: space-between; width: 100%;&amp;quot;&amp;gt; &amp;lt;!-- Second row --&amp;gt;&lt;br /&gt;
	&amp;lt;div style=&amp;quot;width: 49%;&amp;quot;&amp;gt; &amp;lt;!-- Left side second box --&amp;gt;&lt;br /&gt;
		&amp;lt;div style=&amp;quot;border: solid #aaa 1px; margin-bottom:1em; background: #EDFEFE; padding: 4px; spacing: 0px;&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;div style=&amp;quot;font-size:115%;border-bottom:1px dotted gray;&amp;quot;&amp;gt;FATE&amp;lt;/div&amp;gt;&lt;br /&gt;
			[[fate/fpx|FatePatcher Core]] - A deployment-time patching utility for the FATE games &amp;lt;br /&amp;gt;&lt;br /&gt;
			[[fate/fpxgui|FPX Mod Manager]] - A front-end management utility for fpx mods &amp;lt;br /&amp;gt;&lt;br /&gt;
			[[fate/dungeonology|Dungeonology]] - An expansion pack for the FATE series &amp;lt;br /&amp;gt;&lt;br /&gt;
		&amp;lt;/div&amp;gt;&lt;br /&gt;
	&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;div style=&amp;quot;width: 49%;&amp;quot;&amp;gt; &amp;lt;!-- Right side second box --&amp;gt;&lt;br /&gt;
		&amp;lt;div style=&amp;quot;border: solid #aaa 1px; margin-bottom:1em; background: #EDFEFE; padding: 4px; spacing: 0px;&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;div style=&amp;quot;font-size:115%;border-bottom:1px dotted gray;&amp;quot;&amp;gt;TBD&amp;lt;/div&amp;gt;&lt;br /&gt;
			TBD&lt;br /&gt;
		&amp;lt;/div&amp;gt;&lt;br /&gt;
	&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt; &amp;lt;!-- End of second row --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt; &amp;lt;!-- Done --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Fate/filter_API&amp;diff=67</id>
		<title>Fate/filter API</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Fate/filter_API&amp;diff=67"/>
		<updated>2025-03-04T04:01:56Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: Added the filter API. Needs expanding.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;File filters in FPX are sandboxed lua scripts, used to provide advanced editing functionality to mods on deployment. The lua engine is 5.1.4 with functionality limited by the sandbox environment.&lt;br /&gt;
&lt;br /&gt;
Of major note, a number of functions and libraries that provide access to the file system have been removed from the sandbox. Instead, as each filter script is ran as a function, the file&#039;s contents being accessed can instead be found using the ‘…’ ellipses variable. The contents are edited and then returned, and FPX will store the returned string as the new file contents (or pass them along to the next filter). If a non-string value is returned, it is discarded instead and the filter is skipped.&lt;br /&gt;
&lt;br /&gt;
== Sandbox API ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Key !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;3&amp;quot; style=&amp;quot;background:#f2f2f2;&amp;quot; | Tables in Sandbox&#039;s `_G`&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;_sandbox&#039;&#039;&#039; || Table || Self-references the sandbox&#039;s table.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;user_config&#039;&#039;&#039; || Table || The user&#039;s `config.ini` file contents as a table.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;modlist&#039;&#039;&#039; || Table || The user&#039;s current modlist data.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;string&#039;&#039;&#039; || Library || Standard string library.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;math&#039;&#039;&#039; || Library || Standard math library.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;os&#039;&#039;&#039; || Library || Limited OS library (only contains `os.time` and `os.date`).&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;debug&#039;&#039;&#039; || Library || Limited debug library.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;coroutine&#039;&#039;&#039; || Library || Standard coroutine library.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;table&#039;&#039;&#039; || Library || Standard table library.&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;3&amp;quot; style=&amp;quot;background:#f2f2f2;&amp;quot; | Functions in Sandbox&#039;s `_G`&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;spickle&#039;&#039;&#039; || Function || Visually represents the structure of a table as a string (for debugging).&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;print&#039;&#039;&#039; || Function || Quick formatted console print.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;console_print&#039;&#039;&#039; || Function || Formatted print; provide your own logging level (1-4).&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;load&#039;&#039;&#039; || Function || Lua&#039;s `load()` function with sandbox limitations.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;loadstring&#039;&#039;&#039; || Function || Lua&#039;s `loadstring()` function with sandbox limitations.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;loadfile&#039;&#039;&#039; || Function || Lua&#039;s `loadfile()` function with sandbox limitations.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;dofile&#039;&#039;&#039; || Function || Sandboxed `loadfile`, but with instant execution.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;require&#039;&#039;&#039; || Function || require is a stub in the sandbox&#039;s context and has no functionality.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;read_mod_file&#039;&#039;&#039; || Function || Reads a file relative to the user&#039;s mod directory.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;read_game_file&#039;&#039;&#039; || Function || Reads a file relative to the user&#039;s game directory.&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;3&amp;quot; style=&amp;quot;background:#f2f2f2;&amp;quot; | Additional Values in Sandbox&#039;s `_G`&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;…&#039;&#039;&#039; || String || Script mods read this string to get the contents of the file they are editing. Returning a string saves any edits made.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Fate/instruct_API&amp;diff=66</id>
		<title>Fate/instruct API</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Fate/instruct_API&amp;diff=66"/>
		<updated>2025-03-04T03:31:12Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: Completed instruct API page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== What is the instruct file ==&lt;br /&gt;
Every FPX mod requires a patch.json file in its root directory, which defines the mod and contains the instructions on how to apply it. It does follow [https://www.json.org/json-en.html normal JSON formatting standards]. This json file is the &#039;instruct&#039; file, as it literally instructs the Fate Patcher in how to apply files. An &amp;quot;empty&amp;quot; mod to use as a starting template can be downloaded [[file:fate/empty_mod_template.zip|here]].&lt;br /&gt;
&lt;br /&gt;
== General data ==&lt;br /&gt;
The instruct file will generally start with the following information. Only the bold entries are required; the rest are optional, but will be useful for users managing their mods with the GUI front-end eventually distributed with FPX. Unless otherwise mentioned, assume all elements are strings.&lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;1&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;name&#039;&#039;&#039; || Name of your mod&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;version&#039;&#039;&#039; || Version of your mod. Supports advanced versioning*&lt;br /&gt;
|-&lt;br /&gt;
| author || Primary mod author or team name&lt;br /&gt;
|-&lt;br /&gt;
| web || URL to be opened if the user is checking for updates&lt;br /&gt;
|-&lt;br /&gt;
| description || Describe the mod in a sentence or two&lt;br /&gt;
|-&lt;br /&gt;
| contributors || List of individual contributors/authors, if multiple.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Following these informational elements, you provide the actual &#039;instructive&#039; content that defines how your mod is set up. This content includes one or more of six possible &#039;operations&#039;. Below lists each possible operation. Where a ellipses (…) occurs in the script file, is where something (can) continue/repeat in the given sequence.&lt;br /&gt;
&lt;br /&gt;
=== Index operations ===&lt;br /&gt;
Index operations are key/value pairs that &amp;quot;index&amp;quot; a file under a given name, making it patchable. Most OG *.dat files are indexed by default.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;json&amp;quot; line&amp;gt;&lt;br /&gt;
&amp;quot;index&amp;quot;: {&lt;br /&gt;
  &amp;quot;INDEX_NAME&amp;quot;: &amp;quot;Path/to/file in the FATE game directory&amp;quot;,&lt;br /&gt;
  ...repeat for every index being added&lt;br /&gt;
},&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Copy operations ===&lt;br /&gt;
Given a folder destination and a series of files, the Copy operation copies those files into the destination. This is used to provide assets which are referenced by patch data.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;json&amp;quot; line&amp;gt;&lt;br /&gt;
&amp;quot;copy&amp;quot;: [&lt;br /&gt;
  {&lt;br /&gt;
    &amp;quot;folder&amp;quot;: &amp;quot;Path/to/file in the FATE game directory&amp;quot;,&lt;br /&gt;
    &amp;quot;content&amp;quot;: [&lt;br /&gt;
      &amp;quot;path/to/file from your mod folder, to your asset being deployed&amp;quot;,&lt;br /&gt;
      ...repeat per asset being deployed to the destination&lt;br /&gt;
    ],&lt;br /&gt;
  },&lt;br /&gt;
  ...repeat the {} per destination folder&lt;br /&gt;
],&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Patch operations ===&lt;br /&gt;
Given a valid index, the Patch operation adds new file contents to the end of the original indexed file, in effect adding new content to the game.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;json&amp;quot; line&amp;gt;&lt;br /&gt;
&amp;quot;patch&amp;quot;: [&lt;br /&gt;
  {&lt;br /&gt;
    &amp;quot;container&amp;quot;: &amp;quot;valid index name&amp;quot;,&lt;br /&gt;
    &amp;quot;content&amp;quot;: [&lt;br /&gt;
      &amp;quot;path/to/file from your mod folder, to your text file containing the data to append&amp;quot;,&lt;br /&gt;
      ...&lt;br /&gt;
    ],&lt;br /&gt;
  },&lt;br /&gt;
  ...repeat the {} per index being patched&lt;br /&gt;
],&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Sequence operations ===&lt;br /&gt;
Sequence operations are similar to a copy operation, but allows the file name to be sequentially generated at deployment. This will mostly only be used when adding new music to the game.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;json&amp;quot; line&amp;gt;&lt;br /&gt;
&amp;quot;sequence&amp;quot;: [&lt;br /&gt;
  {&lt;br /&gt;
    &amp;quot;folder&amp;quot;: &amp;quot;Path/to/file in the FATE game directory&amp;quot;,&lt;br /&gt;
    &amp;quot;file&amp;quot;: &amp;quot;destination file name&amp;quot;,&lt;br /&gt;
    &amp;quot;content&amp;quot;: [&lt;br /&gt;
      &amp;quot;path/to/file from your mod folder, to your asset being deployed&amp;quot;,&lt;br /&gt;
      ...&lt;br /&gt;
    ],&lt;br /&gt;
  },&lt;br /&gt;
  ...repeat the {} per destination folder and/or file&lt;br /&gt;
],&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Filter operations ===&lt;br /&gt;
The most powerful yet complex operation, Filters are when you attach a lua file to a given index. This is executed at the end of mod deployment. Refer to the filter script lua API.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;json&amp;quot; line&amp;gt;&lt;br /&gt;
&amp;quot;script&amp;quot;: [&lt;br /&gt;
  {&lt;br /&gt;
    &amp;quot;container&amp;quot;: &amp;quot;valid index&amp;quot;,&lt;br /&gt;
    &amp;quot;file&amp;quot;: &amp;quot;path/to/file.lua from your mod directory&amp;quot;,&lt;br /&gt;
  },&lt;br /&gt;
  ...repeat {} per index and/or filter script to apply&lt;br /&gt;
],&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&#039;&#039;note&#039;&#039;: Filter scripts may execute lua direclty, but they are limited within a sandbox for security purposes. They can only write directly to the file they are operating on, and can only see your game and your mod files only.&lt;br /&gt;
&lt;br /&gt;
=== Override operations ===&lt;br /&gt;
Override operations tell FPX to NOT grab the master copy of a file during the patch process. This is useful if you have overwritten a file that is usually indexed and exists within the base game.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;json&amp;quot; line&amp;gt;&lt;br /&gt;
&amp;quot;override&amp;quot;: [&lt;br /&gt;
  &amp;quot;valid index name&amp;quot;,&lt;br /&gt;
  ...repeat for every overridden indexes&lt;br /&gt;
],&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Example instruct file ==&lt;br /&gt;
This is part of the instruct file for the Dungeonology expansion, a mod that adds multiple assets across the entire game.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;json&amp;quot; line&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
	&amp;quot;name&amp;quot;: &amp;quot;Dungeonology Expansion&amp;quot;,&lt;br /&gt;
	&amp;quot;version&amp;quot;: &amp;quot;1.0.0&amp;quot;,&lt;br /&gt;
	&amp;quot;author&amp;quot;: &amp;quot;Luxen De&#039;Mark&amp;quot;,&lt;br /&gt;
	&amp;quot;web&amp;quot;: &amp;quot;https://www.nexusmods.com/fate/mods/20&amp;quot;,&lt;br /&gt;
	&amp;quot;description&amp;quot;: &amp;quot;A massive dungeon expansion to FATE&amp;quot;,&lt;br /&gt;
	&amp;quot;index&amp;quot;: {&lt;br /&gt;
		&amp;quot;TEMPLATES_MASTER&amp;quot;: &amp;quot;TEMPLATES\\manifest.dat&amp;quot;,&lt;br /&gt;
	},&lt;br /&gt;
	&amp;quot;sequence&amp;quot;: [&lt;br /&gt;
		{&lt;br /&gt;
			&amp;quot;folder&amp;quot;: &amp;quot;MUSIC&amp;quot;,&lt;br /&gt;
			&amp;quot;file&amp;quot;: &amp;quot;dungeon?.ogg&amp;quot;,&lt;br /&gt;
			&amp;quot;content&amp;quot;: [&lt;br /&gt;
				&amp;quot;Music\\imposing.ogg&amp;quot;,&lt;br /&gt;
				&amp;quot;Music\\unsettled house.ogg&amp;quot;,&lt;br /&gt;
				&amp;quot;Music\\Fog under the second street light.ogg&amp;quot;,&lt;br /&gt;
				&amp;quot;Music\\Aquarinonu.ogg&amp;quot;,&lt;br /&gt;
				&amp;quot;Music\\Apocalypse.ogg&amp;quot;,&lt;br /&gt;
			],&lt;br /&gt;
		},&lt;br /&gt;
		{&lt;br /&gt;
			&amp;quot;folder&amp;quot;: &amp;quot;MUSIC&amp;quot;,&lt;br /&gt;
			&amp;quot;file&amp;quot;: &amp;quot;town?.ogg&amp;quot;,&lt;br /&gt;
			&amp;quot;content&amp;quot;: [&lt;br /&gt;
				&amp;quot;Music\\Green-fields.ogg&amp;quot;,&lt;br /&gt;
				&amp;quot;Music\\Pho Magic.ogg&amp;quot;,&lt;br /&gt;
				&amp;quot;Music\\Wild waters in the woods.ogg&amp;quot;,&lt;br /&gt;
			],&lt;br /&gt;
		},&lt;br /&gt;
	],&lt;br /&gt;
	&amp;quot;copy&amp;quot;: [&lt;br /&gt;
		{&lt;br /&gt;
			&amp;quot;folder&amp;quot;: &amp;quot;SOUNDS&amp;quot;,&lt;br /&gt;
			&amp;quot;content&amp;quot;: [&lt;br /&gt;
				&amp;quot;Props\\ice_crystal\\crystal_ting.wav&amp;quot;,&lt;br /&gt;
			],&lt;br /&gt;
		},&lt;br /&gt;
		{&lt;br /&gt;
			&amp;quot;folder&amp;quot;: &amp;quot;PROPS&amp;quot;,&lt;br /&gt;
			&amp;quot;content&amp;quot;: [&lt;br /&gt;
				&amp;quot;Props\\lush_leaf\\lushleaf_obj.MDL&amp;quot;,&lt;br /&gt;
				&amp;quot;Props\\lush_leaf\\lushleaf_alpha.png&amp;quot;,&lt;br /&gt;
				&amp;quot;Props\\lush_leaf\\lushleaf_color.png&amp;quot;,&lt;br /&gt;
			],&lt;br /&gt;
		},&lt;br /&gt;
		{&lt;br /&gt;
			&amp;quot;folder&amp;quot;: &amp;quot;ICONS&amp;quot;,&lt;br /&gt;
			&amp;quot;content&amp;quot;: [&lt;br /&gt;
				&amp;quot;Items\\Windlass\\windlass_alpha.png&amp;quot;,&lt;br /&gt;
				&amp;quot;Items\\Windlass\\windlass_color.png&amp;quot;,&lt;br /&gt;
			],&lt;br /&gt;
		},&lt;br /&gt;
		{&lt;br /&gt;
			&amp;quot;folder&amp;quot;: &amp;quot;ITEMS&amp;quot;,&lt;br /&gt;
			&amp;quot;content&amp;quot;: [&lt;br /&gt;
				&amp;quot;Items\\Windlass\\windlass_obj.mdl&amp;quot;,&lt;br /&gt;
				&amp;quot;Items\\Windlass\\windlass_obj_color.png&amp;quot;,&lt;br /&gt;
				&amp;quot;Items\\Windlass\\windlass_obj_ref.png&amp;quot;,&lt;br /&gt;
			],&lt;br /&gt;
		},&lt;br /&gt;
	],&lt;br /&gt;
	&amp;quot;patch&amp;quot;: [&lt;br /&gt;
		{&lt;br /&gt;
			&amp;quot;container&amp;quot;: &amp;quot;ITEMS_US&amp;quot;,&lt;br /&gt;
			&amp;quot;content&amp;quot;: [&lt;br /&gt;
				&amp;quot;Items\\Spellbooks\\spellbook_items.txt&amp;quot;,&lt;br /&gt;
				&amp;quot;Items\\Gems\\Amber.txt&amp;quot;,&lt;br /&gt;
				&amp;quot;Items\\Compass\\compass_item.txt&amp;quot;,&lt;br /&gt;
				&amp;quot;Items\\Totem Rod\\totem_rod.txt&amp;quot;,&lt;br /&gt;
				&amp;quot;Items\\Bamboo Rod\\bamboo_rod.txt&amp;quot;,&lt;br /&gt;
			],&lt;br /&gt;
		},&lt;br /&gt;
		{&lt;br /&gt;
			&amp;quot;container&amp;quot;: &amp;quot;TEMPLATES_MASTER&amp;quot;,&lt;br /&gt;
			&amp;quot;content&amp;quot;: [&lt;br /&gt;
				&amp;quot;Dungeons\\manifest_patch.txt&amp;quot;,&lt;br /&gt;
			],&lt;br /&gt;
		},&lt;br /&gt;
	],&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Additional notes ==&lt;br /&gt;
* File paths must use a double-backslash. A single backslash is used as an [https://en.wikipedia.org/wiki/Escape_character escape character] in lua, which FPX is written in.&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Fate/instruct_API&amp;diff=65</id>
		<title>Fate/instruct API</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Fate/instruct_API&amp;diff=65"/>
		<updated>2025-03-03T16:10:00Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created wip instruct api page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Every FPX mod requires a patch.json file in its root directory, which defines the mod and contains the instructions on how to apply it. It does follow [https://www.json.org/json-en.html normal JSON formatting standards]. An “empty” mod to use as a starting template can be downloaded [[file:fate/empty_mod_template.zip|here]].&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Fate/installation&amp;diff=64</id>
		<title>Fate/installation</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Fate/installation&amp;diff=64"/>
		<updated>2025-03-03T16:06:37Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created user instructions&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Prerequisites ==&lt;br /&gt;
To use FPX, the following must be met in some capacity:&lt;br /&gt;
* FATE must be installed&lt;br /&gt;
** All four games (OG, UR*, CK*, TS*) are supported.&lt;br /&gt;
** The following game platforms are supported &lt;br /&gt;
*** Original disc&lt;br /&gt;
*** WildTangent Game Store&lt;br /&gt;
*** Steam&lt;br /&gt;
*** Good Old Games&lt;br /&gt;
** The following game platforms are NOT supported&lt;br /&gt;
*** Windows Store (unknown)&lt;br /&gt;
* You need to know WHERE the game is installed&lt;br /&gt;
&lt;br /&gt;
=== Instability with UR, CK, and TS ===&lt;br /&gt;
The sequel games are rather touchy about the game state being changed mid-playthrough. If you change your mods and start getting CTDs while loading a save, you might need to just create a new save. &#039;&#039;&#039;For some reason, even restoring the game&#039;s files to a known good state will NOT let you load these saves!!!&#039;&#039;&#039; I don&#039;t know why. I&#039;ve spent nearly a year investigating this issue, and I have to throw in the towel. I give up! Just don&#039;t edit your mods mid-playthrough, or start a new save when you do.&lt;br /&gt;
&lt;br /&gt;
I have NEVER run into this with the OG game, which has more mod compatibility anyways.&lt;br /&gt;
&lt;br /&gt;
== Installing for direct usage (one-click deployment method) ==&lt;br /&gt;
To use fpx standalone (recommended), a batch file is provided for easy deployment with expected settings.&lt;br /&gt;
&lt;br /&gt;
# Download and extract FPX Core. &lt;br /&gt;
# Copy the application (fpxcmd.exe) and one-click batch file (fpxrun.bat) into your game&#039;s root directory.&lt;br /&gt;
# Run the batch file, and wait for FPX to finish making a backup of your game&lt;br /&gt;
# Place your FPX mods into the new /mods directory (create it if it isn&#039;t there)&lt;br /&gt;
#* Download and extract each mod&lt;br /&gt;
#* Place each mod within the /mods directory, so that every “patch.json” has its own folder but is only one folder deep, not two.&lt;br /&gt;
# Run the batch file to deploy your mods&lt;br /&gt;
&lt;br /&gt;
After this, your mods should be integrated into the game. If you need to add new mods or remove existing ones, do so, then run the batch file again to update.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;You can keep FPX seperate from your game directory!&#039;&#039;&#039; You will have to manually edit the config.ini file after running FPX for the first time to point to your game&#039;s directory. If you are modding UR, CK, or TS, this is recommended.&lt;br /&gt;
&lt;br /&gt;
== Installing for use with the NexusMods Vortex Mod Manager ==&lt;br /&gt;
A basic vortex extension is provided for users of Vortex Mod Manager from NexusMods. This allows you to use vortex to download your mods and extract them to the mod folder. &lt;br /&gt;
&lt;br /&gt;
# Download and extract FPX Core.&lt;br /&gt;
# Copy the application (fpxcmd_x64.exe) into your game&#039;s root directory.&lt;br /&gt;
# Download the FATE extension for Vortex.&lt;br /&gt;
# Download your mods from NexusMods.&lt;br /&gt;
# Deploy your mods in Vortex&lt;br /&gt;
# In the Vortex dashboard (First tab), activate the FPX utility shortcut. Wait for it to complete.&lt;br /&gt;
&lt;br /&gt;
Repeat steps 4-6 when adding, removing, or managing your mods. Make sure Vortex is set to use hard-link deployment; FPX does not support soft-linking at this time.&lt;br /&gt;
&lt;br /&gt;
== Installing for use with the FPX Mod Manager ==&lt;br /&gt;
A visual front-end for FPX is in-development, but is not available at this time.&lt;br /&gt;
&lt;br /&gt;
== Investigating errors ==&lt;br /&gt;
To investigate errors, open the “errors.log” file that is created in the game directory. This lists all output from FPX; by searching for any [WARNING] and [ERROR] notices, you can look specifically for anything that may require your attention from the last time it ran. If there is no errors.log file, FPX may require administrator privileges to run in the current directory.&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Fate/fpx&amp;diff=63</id>
		<title>Fate/fpx</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Fate/fpx&amp;diff=63"/>
		<updated>2025-03-03T15:55:49Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created fpx landing page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Fate Patcher Core is a deployment-time scripting utility that provides easy mod management to FATE!&#039;&#039;&#039; &amp;lt;br /&amp;gt;&lt;br /&gt;
By utilizing a versatile instruction system, mods are able to control where files are moved and what gets changed, improving the ease-of-installation of FATE mods. Key benefits of using FPX Core:&lt;br /&gt;
* Easy integration with mod managers&lt;br /&gt;
* Increased compatibility between mods&lt;br /&gt;
* Mod removal without reinstallation&lt;br /&gt;
* More avenues for modding capabilities&lt;br /&gt;
&lt;br /&gt;
You can download this application at the following locations&lt;br /&gt;
{|border=&amp;quot;1&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;NexusMods&#039;&#039;&#039; || [https://www.nexusmods.com/fate/mods/21 v1.1.2] (stable)&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Github&#039;&#039;&#039; || [https://github.com/LuxenDM/fpxcmd v1.1.2] (in-development)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== For users ==&lt;br /&gt;
* [[fate/installation|Installation and usage instructions]]&lt;br /&gt;
&lt;br /&gt;
== For modders ==&lt;br /&gt;
* [[fate/instruct_API|instruct file API]]&lt;br /&gt;
* [[fate/filter_API|filter-script lua API]]&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/neoloader&amp;diff=62</id>
		<title>Vendetta/neoloader</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/neoloader&amp;diff=62"/>
		<updated>2025-03-03T15:48:34Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: /* For users */ removed redundant acronym use&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[image:Vendetta-Neobanner.jpg]]&lt;br /&gt;
==  ==&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;big&amp;gt;&amp;lt;big&amp;gt;Neoloader Pre-execution Library Management Engine (NPLME) is a toolkit for loading and managing mods in Vendetta Online and improving functional usage between them.&amp;lt;/big&amp;gt;&amp;lt;/big&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== For users ==&lt;br /&gt;
Neoloader is an advanced mod loader for Vendetta Online that sits on top of the existing mod loader. The goal of the Neoloader is to allow in-game management of Vendetta Online&#039;s plugins as much as the game engine can allow, and to facilitate a standard through which plugins can communicate with each other.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Features:&#039;&#039;&#039;&lt;br /&gt;
* Load plugins in order of dependencies and registration, instead of alphabetically&lt;br /&gt;
* Minimize risk of game crashes during the loading stage by safety-netting the loading process&lt;br /&gt;
* Provide management of plugins in-game&lt;br /&gt;
* Easy installation and removal of the system, and a guided recovery system in case of failure&lt;br /&gt;
* An extensive API to promote mod intercommunication and extensibility&lt;br /&gt;
&lt;br /&gt;
Neoloader can be downloaded from the following locations:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Location&lt;br /&gt;
! Version&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;[https://www.nexusmods.com/vendettaonline/mods/3 NexusMods]&#039;&#039;&#039;&lt;br /&gt;
| 6.1.1 (LME 3.11.0)&lt;br /&gt;
| This is the preferred location for stable versions of Neoloader&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;[https://voupr.spenced.com/plugin.php?name=neoloader VOUPR]&#039;&#039;&#039;&lt;br /&gt;
| 6.1.1 (LME 3.11.0)&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;[https://github.com/LuxenDM/Neoloader Github]&#039;&#039;&#039;&lt;br /&gt;
| 6.1.1 (LME 3.11.0)&lt;br /&gt;
| Development versions may be available here&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
To manage non-LME mods, use a tool such as [https://www.nexusmods.com/vendettaonline/mods/2 Neopatcher] to convert mods to a hybrid model capable of being seen and managed by Neoloader.&lt;br /&gt;
&lt;br /&gt;
== For modders ==&lt;br /&gt;
* [[vendetta/overview|Developer&#039;s overview]] &amp;lt;br /&amp;gt;&lt;br /&gt;
* [[vendetta/design|Creating or converting a plugin for the LME]] &amp;lt;br /&amp;gt;&lt;br /&gt;
* [[vendetta/registration|INI registration details]] &amp;lt;br /&amp;gt;&lt;br /&gt;
* [[vendetta/API|LME API for developers]] &amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/register&amp;diff=61</id>
		<title>Vendetta/API/register</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/register&amp;diff=61"/>
		<updated>2025-03-03T15:47:34Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: added register&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.register (ini_pointer) :: success_flag, error_reason&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Attempts to open the registration file and add it&#039;s mod to Neoloader&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string ini_pointer: path to the mod registration INI file&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# boolean success_flag: true if success, false if failure&lt;br /&gt;
# string error_reason: if the mod failed to register, string returns why&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 2.x (Neoloader indev)&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/reload&amp;diff=60</id>
		<title>Vendetta/API/reload</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/reload&amp;diff=60"/>
		<updated>2025-03-03T15:46:55Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: added reload&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.reload () :: Game Reloads&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Forces an interface reload&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# none&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# nil&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 3.4.x&lt;br /&gt;
* (The following only applies if the setting is enabled by the user) Neoloader will attempt to clean up all user commands not present in the &amp;quot;zcom.lua&amp;quot; file. Whether this is still neccesary is unknown, but for a time the game wasn&#039;t cleaning up commands properly, resulting in &#039;ghost commands&#039; attempting to access data that had been garbage collected by the lua engine. This functionality remains in Neoloader to help make sure plugins are unloaded as much as possible, just in case, but is disabled by default.&lt;br /&gt;
* Neoloader registers a user command &amp;quot;reload&amp;quot; which points to this function.&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/request_auth&amp;diff=59</id>
		<title>Vendetta/API/request auth</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/request_auth&amp;diff=59"/>
		<updated>2025-03-03T15:45:40Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: added request_auth&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.request_auth (function callback) :: nil :: Neoloader auth key if successful&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Allows a plugin to request the auth key, necessary for triggering lib.uninstall and lib.activate. This key is granted to the callback function if the user selects to allow it.&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# function callback(key): This function is called if the user selects to give the plugin the auth key&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
* nil: This function does not return anything&lt;br /&gt;
* string key: the callback function will be called with a string argument containing the key if the user selects to authenticate the plugin&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 3.4.x&lt;br /&gt;
* This should be used only in one-off situations or for on-the-fly executed code; for dedicated plugins, changing the plugin&#039;s load state to &amp;quot;AUTH&amp;quot; will let it have the auth key when it initially loads. Neoloader&#039;s registered management utility will by default also get the auth key, regardless of load state.&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/require&amp;diff=58</id>
		<title>Vendetta/API/require</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/require&amp;diff=58"/>
		<updated>2025-03-03T15:44:28Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: added require&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.require (requirements, callback) :: nil&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Delays a function from executing until the requirements are met. &lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# table requirements: A list of {mod_IDs, mod_versions} that must be met; these must be loaded and activated, not just present.&lt;br /&gt;
# function callback: The function to be executed if/when all requirements are fulfilled.&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# nil&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 2.x (Neoloader indev)&lt;br /&gt;
* This function provides a method to introduce &amp;quot;soft dependencies&amp;quot; - extended functionality for mods that your plugin can utilize but aren&#039;t neccesary for its load state.&lt;br /&gt;
* The function lib.check_queue is called every time a mod is activated; it is this function that tests if the dependency table provided has been met or not, utilizing lib.resolve_dep_table&lt;br /&gt;
* If you need to make a range of versions valid, add a key ver_max=&amp;quot;version&amp;quot; to the table. the previous version=&amp;quot;version&amp;quot; will become a minimum requirement.&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/resolve_dep_table&amp;diff=57</id>
		<title>Vendetta/API/resolve dep table</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/resolve_dep_table&amp;diff=57"/>
		<updated>2025-03-03T15:42:12Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created resolve_dep_table&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.resolve_dep_table (input_table) :: boolean status&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
When provided a table of mod IDs, checks if all exist and returns the result.&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# input_table: Table of mod IDs in the following format:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=lua line&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  {&lt;br /&gt;
    name = mod_name,&lt;br /&gt;
    version = mod_version,&lt;br /&gt;
  },&lt;br /&gt;
  {&lt;br /&gt;
    name = mod_name,&lt;br /&gt;
    version = mod_version_minimum,&lt;br /&gt;
    ver_max = mod_version_maximum,&lt;br /&gt;
  },&lt;br /&gt;
  ...&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# Boolean status&lt;br /&gt;
#* true if all mods in the table are &amp;quot;ready&amp;quot;, otherwise false&lt;br /&gt;
#* mods must be loaded! existing isn&#039;t enough!&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 3.0.x&lt;br /&gt;
* Just like lib.require(), use a ver_max=&amp;quot;version&amp;quot; entry to make that particular mod entry accept a range of version numbers, with the old version=&amp;quot;mod_version&amp;quot; acting as the minimum version&lt;br /&gt;
* The input table is not sanity checked yet…&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/resolve_file&amp;diff=56</id>
		<title>Vendetta/API/resolve file</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/resolve_file&amp;diff=56"/>
		<updated>2025-03-03T15:37:50Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created resolve_file&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.resolve_file (path, ...) :: nil&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Attempts to load and execute a file using a variety of path options. This function attempts to make file loading behavior consistant across the game&#039;s state.&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string filepath: path to the file to be accessed&lt;br /&gt;
# string ...: alternate path(s) to check&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# boolean status: true if the file loaded successfully&lt;br /&gt;
# ...: results of the file, or a string error message&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 2.x (Neoloader indev)&lt;br /&gt;
* This function uses lib.find_file to verify the file exists, and will always execute the first found path.&lt;br /&gt;
* The file being executed will likely be loaded with pcall(), depending on the LME&#039;s &amp;quot;protectResolveFile&amp;quot; flag&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/set_class&amp;diff=55</id>
		<title>Vendetta/API/set class</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/set_class&amp;diff=55"/>
		<updated>2025-03-03T15:36:50Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: added set_class&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.set_class (mod_id, mod_version, mod_class) :: nil&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
saves the mod&#039;s class table so other mods may access it&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string mod_id: the mod who&#039;s class is to be stored&lt;br /&gt;
# string mod_version: the version of the mod who&#039;s class is to be stored&lt;br /&gt;
# table mod_class: the table containing the mod&#039;s public functions and variables&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# nil&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 2.x (Neoloader indev)&lt;br /&gt;
* this function fails if the mod isn&#039;t loaded or has been locked. if unlocked, the class is replaced, not added to.&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/set_load&amp;diff=54</id>
		<title>Vendetta/API/set load</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/set_load&amp;diff=54"/>
		<updated>2025-03-03T15:35:49Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created set_load&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.set_state (auth key, mod_id, mod_version, load_state) :: nil&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Changes the mod&#039;s ability to load to the new load state.&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# auth key: The auth key must be provided for this functionality&lt;br /&gt;
# string mod_id: the mod who&#039;s load state will be adjusted&lt;br /&gt;
# string mod_version: the version of the mod who&#039;s load state will be adjusted&lt;br /&gt;
# string load_state: the new load state for this mod. Valid options are &amp;quot;YES&amp;quot;, &amp;quot;NO&amp;quot;, &amp;quot;AUTH&amp;quot;, and &amp;quot;FORCE&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# nil&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 3.7.x&lt;br /&gt;
* If the auth key is incorrect, this function fails silently&lt;br /&gt;
* If the new load state is not valid, &amp;quot;NO&amp;quot; (do not load) is used instead&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/set_waiting&amp;diff=53</id>
		<title>Vendetta/API/set waiting</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/set_waiting&amp;diff=53"/>
		<updated>2025-03-03T15:34:39Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created set_waiting&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.set_waiting (mod_id, mod_version, wait_state, freeze_key) :: nil&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
* Freezes or releases the pending execution state of mods dependent on the provided mod.&lt;br /&gt;
** This means that plugins set as dependent will be delayed until the master is ‘released’&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string mod_id: the mod to be frozen&lt;br /&gt;
# string mod_version: the version of the mod to be frozen&lt;br /&gt;
# string wait_state: &amp;quot;YES&amp;quot; to freeze the mod, &amp;quot;NO&amp;quot; to release the mod&lt;br /&gt;
# freeze_key: any value to act as a lock on this mod&#039;s dependents&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# nil&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 3.8.x&lt;br /&gt;
* This function is vital for plugins that expect to do a lot of execution after the LME Init phase, such as any mod that expects to run during the default mod loader sequence.&lt;br /&gt;
* This functionality will be rolled into update_state in an upcoming release and this function will be listed as deprecated&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/uninstall&amp;diff=52</id>
		<title>Vendetta/API/uninstall</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/uninstall&amp;diff=52"/>
		<updated>2025-03-03T15:31:17Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created uninstall&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.uninstall (verification_key) :: nil&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Attempts to remove Neoloader from the user&#039;s device&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string verification_key: Authentication key is required to trigger Neoloader&#039;s removal&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# nil&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 3.0.x&lt;br /&gt;
* This function should only be called by the user directly inside of the recovery environment or by Neoloader&#039;s active manager.&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/unlock_class&amp;diff=51</id>
		<title>Vendetta/API/unlock class</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/unlock_class&amp;diff=51"/>
		<updated>2025-03-03T15:30:28Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created unlock_class&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.unlock_class (id, version, verification_key) :: nil&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Attempts to unlock the locked class of the selected mod, allowing class modification&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string id: name of the mod to be activated&lt;br /&gt;
# string version: version of the mod to be activated&lt;br /&gt;
# verification_key: the security key used to lock a class&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# nil&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 3.0.x&lt;br /&gt;
* the LME master auth key can be provided in place of a unique verification key&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/update_state&amp;diff=50</id>
		<title>Vendetta/API/update state</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/update_state&amp;diff=50"/>
		<updated>2025-03-03T15:29:34Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created update_state&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.update_state (string id, string version, table state_data) :: nil&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Allows editing of a plugin&#039;s state data post-registration&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string id: name of the mod to be activated&lt;br /&gt;
# string version: version of the mod to be activated&lt;br /&gt;
# table state_data: settings to adjust in table format. see below.&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# nil&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 3.11.0&lt;br /&gt;
&lt;br /&gt;
valid state data entries:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Key !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;complete&#039;&#039;&#039; || Allows the plugin to trigger its own failure state and prevent any dependent plugins from running if they haven&#039;t already.  &lt;br /&gt;
This cannot unload code that&#039;s already running. Use in hybrid mods to disable themselves easily.  &lt;br /&gt;
Plugins cannot mark themselves as ‘complete’; this value can only be `false` or not exist.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;name&#039;&#039;&#039; || Allows the plugin to change its registered display name. Not recommended.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;link&#039;&#039;&#039; || Allows the plugin to change the ‘link’ read from its INI file (or set one, if no link was originally provided).&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;plugin_name&#039;&#039;&#039; || Same as `name`.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;plugin_link&#039;&#039;&#039; || Same as `link`.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;err_details&#039;&#039;&#039; || If the plugin is marking itself as incomplete to indicate a self-caught error, this string is added to the LME log display.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/pass_ini_identifier&amp;diff=49</id>
		<title>Vendetta/API/pass ini identifier</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/pass_ini_identifier&amp;diff=49"/>
		<updated>2025-03-03T15:26:30Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created pass_ini_identifier&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.pass_ini_identifier (string id, string version) :: string output_id, string output_version&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Converts an INI path file to an ID/version pair if it has been registered&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# id: string path to INI file, or string plugin ID&lt;br /&gt;
# version: string version number&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# output_id: ID of the plugin if found&lt;br /&gt;
# output_version: Version of the plugin if found&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 3.10.x&lt;br /&gt;
* This function is used internally by Neoloader for any function that accepts an ID/version pair. If the ID/ver is passed, it gets passed back. However, this allows modders to instead provide their INI file paths to any function instead of the ID/version stated (leave &#039;version&#039; as nil). these paths have been stored as keys to the ID/ver pair required. Effectively, it allows modders to shortcut storing the ID/version in the plugin itself and using it for every LME call.&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/open_if_config&amp;diff=48</id>
		<title>Vendetta/API/open if config</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/open_if_config&amp;diff=48"/>
		<updated>2025-03-03T15:24:00Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created open_if_config&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.open_if_config () :: nil&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
opens the UI of Neoloader&#039;s active interface manager&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# none&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# nil&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 3.1.x&lt;br /&gt;
* This is the same as getting the ID/Version of the active interface and calling its class function ‘open’&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/open_config&amp;diff=47</id>
		<title>Vendetta/API/open config</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/open_config&amp;diff=47"/>
		<updated>2025-03-03T15:22:09Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: added open_config&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.open_config () :: nil&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
opens the UI of Neoloader&#039;s active manager&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# None&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# nil&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 3.1.x&lt;br /&gt;
* This is the same as getting the ID/Version of the active front-end and calling its class function ‘open’&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/notify&amp;diff=46</id>
		<title>Vendetta/API/notify</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/notify&amp;diff=46"/>
		<updated>2025-03-03T15:21:04Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created notify&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.notify (notification_status, ...) :: nil&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Sends a notification to Neoloader&#039;s active notification manager&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string notification_status: the status to be communicated&lt;br /&gt;
# ...: any additional values relevant to the communication&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# nil&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 3.0.x&lt;br /&gt;
* The behavior of the notification system is dependent on the activated manager; for the bundled neomgr, only a few statuses are expected, and the rest use placeholder alert elements. Custom handlers should be provided for notification types other than the default expected set. (TODO: neomgr, neonotif, and programming with)&lt;br /&gt;
* This feature is meant to be used for communicating to the user through a unified method; for internal use, Vendetta Online&#039;s existing event management system works perfectly fine.&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/mod_read_str&amp;diff=45</id>
		<title>Vendetta/API/mod read str</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/mod_read_str&amp;diff=45"/>
		<updated>2025-03-03T15:19:17Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created mod_read_str&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.mod_read_str (id, version, header, key) :: ini_value&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Reads the key item from the selected mod&#039;s registration INI file&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string id: name of the mod to be activated&lt;br /&gt;
# string version: version of the mod to be activated&lt;br /&gt;
# string header: The [header] to look under&lt;br /&gt;
# string key: the key of the item to check&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# string ini_value: The value stored in the INI file at [header], key. an empty string is returned if the key doesnt exist.&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 3.0.x&lt;br /&gt;
* If repeated access is required, obtaining the mod&#039;s registration path with lib.get_state() and then using gkini.ReadString2 may be more efficient.&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/log_error&amp;diff=44</id>
		<title>Vendetta/API/log error</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/log_error&amp;diff=44"/>
		<updated>2025-03-03T15:17:56Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created log_error&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.log_error (message, [alert_level], [mod_id, mod_version]) :: nil&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Stores the message in Neoloader&#039;s message logging table. The message will be formatted if configured to do so by the LME. The message can also be stored in a particular mod&#039;s error table if the id and version are provided.&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string message: The string to store&lt;br /&gt;
# number alert_level: The type of error&lt;br /&gt;
# string mod_id: The internal id of the mod to store this log in&lt;br /&gt;
# string mod_ver: The version of the mod to store this log in&lt;br /&gt;
&lt;br /&gt;
Alert levels:&lt;br /&gt;
{|border=&amp;quot;1&amp;quot;&lt;br /&gt;
| 1  || Debugging &lt;br /&gt;
|-&lt;br /&gt;
| 2  || Info &lt;br /&gt;
|-&lt;br /&gt;
| 3  || Warning &lt;br /&gt;
|-&lt;br /&gt;
| 4  || Error &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# nil&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 2.x (Neoloader preview)&lt;br /&gt;
* If the user has &amp;quot;Echo Logging&amp;quot; enabled, the message will also be printed to the console. This is the default behavior of Neoloader.&lt;br /&gt;
* The &amp;quot;Formatting&amp;quot; of a message is to make logged errors more in line with how industry standard logs appear. This can be disabled through the config option &amp;quot;dbgFormatting=NO&amp;quot;&lt;br /&gt;
* If the LME&#039;s log ignore level is above the provided alert level, the log is discarded. The default is to keep alert 2 and above.&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/lock_class&amp;diff=43</id>
		<title>Vendetta/API/lock class</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/lock_class&amp;diff=43"/>
		<updated>2025-03-03T15:13:44Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created lock_class&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.lock_class (id, version, verification_key) :: nil&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Prevents further changes to a mod&#039;s class table&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string id: name of the mod to be activated&lt;br /&gt;
# string version: version of the mod to be activated&lt;br /&gt;
# verification_key: a key that must be provided to unlock the class and allow changes&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# nil&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 2.x (Neoloader indev)&lt;br /&gt;
* If no key is provided, lib.generate_key is called. The key cannot be retrieved when this occurs.&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/lme_configure&amp;diff=42</id>
		<title>Vendetta/API/lme configure</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/lme_configure&amp;diff=42"/>
		<updated>2025-03-03T15:12:35Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created lme_configure&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.lme_configure (config_option, new_value, [auth_key]) :: nil&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Configures the LME settings and saves the value&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string config_option: The identifier of the configuration option to change&lt;br /&gt;
# string or number new_value: the value to be changed to. The value will be converted to a string or number as necessary.&lt;br /&gt;
# auth key: Some options require the auth key be provided or the change will not occur&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# nil if successful, false if the config option doesn&#039;t exist&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 3.8.x&lt;br /&gt;
* The following options require the auth key be provided: defaultLoadState, listPresorted, current_if, current_mgr&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/lme_get_config&amp;diff=41</id>
		<title>Vendetta/API/lme get config</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/lme_get_config&amp;diff=41"/>
		<updated>2025-03-03T15:11:15Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created lme_get_config&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.lme_get_config (config_name) :: &amp;lt;various&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Retrieves the current configuration setting for the LME provider, or returns all available settings&#039; names.&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# config_name: string name of LME setting.&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
* if option exists: &lt;br /&gt;
*# config option [usually string, sometimes number]&lt;br /&gt;
* if option doesn&#039;t exist: &lt;br /&gt;
*# boolean false,&lt;br /&gt;
*# string “option does not exist”&lt;br /&gt;
* if config_name is nil: &lt;br /&gt;
*# table valid_config_items: table of all settings&#039; names&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 3.10.x&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/is_ready&amp;diff=40</id>
		<title>Vendetta/API/is ready</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/is_ready&amp;diff=40"/>
		<updated>2025-03-03T15:08:31Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created is_ready&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.is_ready (id, version) :: boolean mod_loaded&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Checks if the selected mod has been loaded and completed successfully&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string id: name of the mod to be checked&lt;br /&gt;
# string version: version of the mod to be checked&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# boolean: True if the mod exists, set to load, dependencies were met, AND had no errors when activating or post-launch failure states were triggered&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 2.x (Neoloader indev)&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/is_exist&amp;diff=39</id>
		<title>Vendetta/API/is exist</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/is_exist&amp;diff=39"/>
		<updated>2025-03-03T15:07:42Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created is_exist&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.is_exist (id, version) :: boolean exists&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Check if a mod exists in the Neoloader registry&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string id: name of the mod to be activated&lt;br /&gt;
# string version: version of the mod to be activated&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# boolean exists: true if the mod is in the registry&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 2.x (Neoloader indev)&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/get_whole_ver&amp;diff=38</id>
		<title>Vendetta/API/get whole ver</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/get_whole_ver&amp;diff=38"/>
		<updated>2025-03-03T15:06:11Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created get_whole_ver&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.get_whole_ver (string version) :: table version_data, table metadata&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Break down a semantic version string or similar and return as itemized tables&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string version: String to be broken apart&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# table version_data: main version data, each individual number seperated into individual keys&lt;br /&gt;
# table metadata: extra suffix attached to some version strings&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 3.4.x&lt;br /&gt;
* While this function was designed with Semantic versioning in mind, it will support in theory any version string where numbers are seperated by non numbers. The only restricted character is the hyphen (-), which denotes the beginning of metadata.&lt;br /&gt;
* Currently, all metadata is stored in the first key of the metadata table. While it might seem more intuitive to just return a string comprising of the metadata, in the future this function may be able to break metadata into individual components if neccesary, so for long-term compatibility it will return a table.&lt;br /&gt;
&lt;br /&gt;
Examples of what to expect using this function:&lt;br /&gt;
&lt;br /&gt;
* Pure semantic style: &amp;quot;1.4.4 -beta&amp;quot;&lt;br /&gt;
** {1, 4, 4}, {beta}&lt;br /&gt;
* VO Update versioning: &amp;quot;1.8.640.1&amp;quot;&lt;br /&gt;
** {1, 8, 640, 1}, {}&lt;br /&gt;
* Incremental Version Numbering: &amp;quot;4&amp;quot;&lt;br /&gt;
** {4},{}&lt;br /&gt;
* Release/date/build number: &amp;quot;r16y23m3 -b104&amp;quot;&lt;br /&gt;
** {16, 23, 3}, {b104}&lt;br /&gt;
As you can see, it allows Neoloader to be versatile in handling a wide range of modder preferences, as long as their own individual styles remain consistant.&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/get_state&amp;diff=37</id>
		<title>Vendetta/API/get state</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/get_state&amp;diff=37"/>
		<updated>2025-03-03T15:02:59Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created get_state&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.get_state (id, version) :: mod_state_table&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Retrieves the state information of the selected mod&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string id: name of the mod to be activated&lt;br /&gt;
# string version: version of the mod to be activated&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# table mod_state: A table describing the mod&#039;s current state within the Neoloader registry&lt;br /&gt;
table definition:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Key !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;load&#039;&#039;&#039; || String `&amp;quot;YES&amp;quot;` or `&amp;quot;NO&amp;quot;` - Indicates whether the mod is set to be loaded when Neoloader starts.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;complete&#039;&#039;&#039; || Boolean - Indicates whether the mod completed successfully.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;dependencies_met&#039;&#039;&#039; || Boolean - Determines whether all dependencies declared by the mod are satisfied.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;load_position&#039;&#039;&#039; || Number - The order in which the mod was loaded compared to all registered mods.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;errors&#039;&#039;&#039; || Table - List of logs associated with this mod.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;latest&#039;&#039;&#039; || String - The latest version of this mod.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;versions&#039;&#039;&#039; || Table - Contains all versions of this mod present in Neoloader.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;plugin_id&#039;&#039;&#039; || String - The mod&#039;s unique ID.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;plugin_version&#039;&#039;&#039; || String - The current version of the mod.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;plugin_type&#039;&#039;&#039; || String - Descriptor of the mod, set by the author in the registration file.  &lt;br /&gt;
(Not used by Neoloader, intended for managers.)&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;plugin_name&#039;&#039;&#039; || String - The public name of the mod.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;plugin_author&#039;&#039;&#039; || String - The author of this mod.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;plugin_link&#039;&#039;&#039; || String - A hyperlink to this mod&#039;s home page.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;plugin_folder&#039;&#039;&#039; || String - The file path to the mod&#039;s folder.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;plugin_ini_file&#039;&#039;&#039; || String - The file path to the mod&#039;s INI file.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;plugin_frozen&#039;&#039;&#039; || String `&amp;quot;YES&amp;quot;` or `&amp;quot;NO&amp;quot;` - Determines whether this mod&#039;s dependents can execute.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;plugin_dependencies&#039;&#039;&#039; || Table - A copy of this plugin&#039;s dependency list.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 2.x (Neoloader indev)&lt;br /&gt;
* Some of these details are not neccesary for Neoloader itself, and are intended to be used by potential mod management front-ends.&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/get_path&amp;diff=36</id>
		<title>Vendetta/API/get path</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/get_path&amp;diff=36"/>
		<updated>2025-03-03T15:00:07Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created get_path&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.get_path (id, version) :: file_path_pointer&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Retrieves the path value of the installed mod&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string id: name of the mod to be retrieved&lt;br /&gt;
# string version: version of the mod to be retrieved&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# string file_path: The path to the mod&#039;s folder; example: &amp;quot;plugins/Neomanager/&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 3.1.x&lt;br /&gt;
* This path is based on the location of the mod&#039;s INI registration file&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/get_patch&amp;diff=35</id>
		<title>Vendetta/API/get patch</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/get_patch&amp;diff=35"/>
		<updated>2025-03-03T14:58:46Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created get_patch&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.get_patch () :: Neoloader_patch_level&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Retrieves the current patch level of the LME API&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# None&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# number patch_level: A number describing the patch level of the API&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 3.x.x&lt;br /&gt;
* Every *fix* to the API increases the patch level. This value is incremented when there are changes that do not add new features or break compatibility&lt;br /&gt;
* See also: get_API, get_minor&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/get_minor&amp;diff=34</id>
		<title>Vendetta/API/get minor</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/get_minor&amp;diff=34"/>
		<updated>2025-03-03T14:57:36Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created get_minor&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.get_minor () :: LME_minor_version&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Retrieves the current minor version of the LME&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# None&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# number minor_version: A number describing the minor version of the API&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 3.5.x&lt;br /&gt;
* Every *addition* to the API increases the minor version number. The API value will only change if there is an incompatibility with previous functions.&lt;br /&gt;
* See also: get_API, get_patch&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/get_latest&amp;diff=33</id>
		<title>Vendetta/API/get latest</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/get_latest&amp;diff=33"/>
		<updated>2025-03-03T14:55:44Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created get_latest&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.get_latest (id, [min, max]) :: mod_version&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Retrieves the latest version of an enabled mod, or the latest within a range of versions that is installed&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string id: name of the mod to look up&lt;br /&gt;
# (optional) string min: minimum version to limit the range to&lt;br /&gt;
# (optional) string max: maximum version to limit the range to&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# string mod_version: the latest version of the installed mod, or the latest installed within the provided range&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 3.x.x&lt;br /&gt;
** Changed in 3.8.x: can now define a range to consider valid return values&lt;br /&gt;
* Other API functions, when given mod version &amp;quot;0&amp;quot;, use this function to handle lookup&lt;br /&gt;
* This function prioritizes the latest active version. If none are active, then retrieves latest installed version.&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/get_gstate&amp;diff=32</id>
		<title>Vendetta/API/get gstate</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/get_gstate&amp;diff=32"/>
		<updated>2025-03-03T14:52:54Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created get_gstate&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.get_gstate (): table general_state_table&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Retrieves a table of data describing Neoloader&#039;s general state&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# None&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# table general_state_table: A table holding Neoloader&#039;s relevant read-only information&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Key !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;version&#039;&#039;&#039; || Unique version information of the currently installed Neoloader instance.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;major&#039;&#039;&#039; || LME API (also returned by `get_API`).&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;minor&#039;&#039;&#039; || LME minor version (also returned by `get_minor`).&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;patch&#039;&#039;&#039; || LME patch version (also returned by `get_patch`).&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;lmever&#039;&#039;&#039; || LME version string (for use in `lib.compare_sem_ver`).&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;pathlock&#039;&#039;&#039; || A boolean defining if standard `dofile/loadfile` have preset paths (this occurs during the default plugin loader).&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;statelock&#039;&#039;&#039; || A boolean defining if globals can be assigned normally, or if `declare()` is necessary.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;current_mgr&#039;&#039;&#039; || The `mod_ID` of the current management interface for the LME.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;current_if&#039;&#039;&#039; || The `mod_ID` of the current interface manager for the LME.  &lt;br /&gt;
If no interface manager exists, this will return `vo-if`.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;current_notif&#039;&#039;&#039; || The `mod_ID` of the current notification provider for the LME.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;notifications&#039;&#039;&#039; || A list of all notification states sent to Neoloader.***&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;log&#039;&#039;&#039; || The complete data log in Neoloader.***&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;pluginlist&#039;&#039;&#039; || A list of every mod currently managed by Neoloader.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;mgr_list&#039;&#039;&#039; || A list of all mods that can be set as LME management front-ends.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;if_list&#039;&#039;&#039; || A list of all mods that can be set as LME interface managers.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;notif_list&#039;&#039;&#039; || A list of all mods that can be set as LME notification providers.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 2.x (Neoloader indev)&lt;br /&gt;
** Changed in LME 3.4.x, 3.5.x, and 3.8.x&lt;br /&gt;
* These tables are references to, not copies of, the tables in Neoloader, as creating copies of these potentially massive tables could lock up a user&#039;s system during processing.&lt;br /&gt;
* These keys exist but are deprecated: manager, ifmgr, newstate, format_log, and log_level&lt;br /&gt;
** manager and ifmgr are inconsistently named, and were replaced with current_if and current_mgr.&lt;br /&gt;
** newstate, format_log, and log_level should now be retrieved with the lib.lme_get_config function&lt;br /&gt;
* the version table and the API/minor/patch version are both styled as &amp;quot;semantic version&amp;quot; identifiers, but are not necessarily synced.&lt;br /&gt;
** The API/minor/patch/lme_ver values are specific to the version of LME API supported.&lt;br /&gt;
** The &amp;quot;version&amp;quot; table defines the version of Neoloader installed, which implemented the LME API&lt;br /&gt;
As long as plugins target a compatible LME API, it should not matter what version of Neoloader is installed, or if a different utility is used instead.&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/get_class&amp;diff=31</id>
		<title>Vendetta/API/get class</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/get_class&amp;diff=31"/>
		<updated>2025-03-03T14:47:16Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created get_class&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.get_class (id, version) :: table mod_class_table&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Retrieves a mod&#039;s stored class table&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string id: name of the mod to be activated&lt;br /&gt;
# string version: version of the mod to be activated&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# table mod_class_table: The table containing a mod&#039;s public functions&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 2.x (Neoloader indev)&lt;br /&gt;
* If a mod hasn&#039;t stored its functions in a class table yet, this will return an empty table.&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/get_API&amp;diff=30</id>
		<title>Vendetta/API/get API</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/get_API&amp;diff=30"/>
		<updated>2025-03-03T14:45:45Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created get_api&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.get_API () :: number API_version&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Retrieves the API version in use by Neoloader&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# None&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# number API_version: the current LME API provided by Neoloader&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Created in LME 2.x.x (Neoloader indev)&lt;br /&gt;
* The API level changes to indicate incompatibility with a previous version of Neoloader.&lt;br /&gt;
* See also: get_minor, get_patch&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/generate_key&amp;diff=29</id>
		<title>Vendetta/API/generate key</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/generate_key&amp;diff=29"/>
		<updated>2025-03-03T14:44:28Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created generate_key&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.generate_key () :: string key&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Creates a key based on SHA1 using certain inputs&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# None&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# string key: the string containing the alphanumeric key&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 3.x.x&lt;br /&gt;
* This is essentially a shortcut to using SHA1(gkmisc.GetGameTime() + math.random()), and is used internally by Neoloader.&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/find_file&amp;diff=28</id>
		<title>Vendetta/API/find file</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/find_file&amp;diff=28"/>
		<updated>2025-03-03T06:49:16Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created find_file&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.find_file (filepath, ...) :: nil&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Attempts to find a file using a variety of path options. This can be useful when you do not want to instantly run lua code with lib.resolve_file (such as using your own method of running the code, or when you need to pass arguments)&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string filepath: Primary file path to check&lt;br /&gt;
# string ...: alternate path(s) to check&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# string valid_path: First valid path detected&lt;br /&gt;
# table all_valid: table containing every valid path detected&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Split from [[vendetta/API/resolve_file|lib.resolve_file]] and added as its own function in LME 3.7.x&lt;br /&gt;
* ../ and ../../ are checked for every provided path entry as well, in case the path is being adjusted by the Vendetta Online sandbox&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/execute&amp;diff=27</id>
		<title>Vendetta/API/execute</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/execute&amp;diff=27"/>
		<updated>2025-03-03T06:47:13Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created execute&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.execute (string mod_id, string mod_version, string function_name, ...) :: ...&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Calls a singular function from a mod&#039;s class and returns its results&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string mod_id: name of the mod being called&lt;br /&gt;
# string mod_version: version of the mod being called&lt;br /&gt;
# string function_name: name of the function to be called&lt;br /&gt;
# ... : arguments to be passed to the function being called&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# ... : any values returned by the called function&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Created in LME 2.x.x (Neoloader indev)&lt;br /&gt;
* If the value of the class is not a function, this will return that value instead&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/err_handle&amp;diff=26</id>
		<title>Vendetta/API/err handle</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/err_handle&amp;diff=26"/>
		<updated>2025-03-03T06:45:46Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created err_handle. seems I never finished this on the wiki.js instance.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;tbd&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Definition ===&lt;br /&gt;
lib.err_handle(boolean conditional, string message) :: nil&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Functions similar to Assert, but only logs the error with traceback when the conditional is wrong. &lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# boolean conditional: the condition to test for a handled error&lt;br /&gt;
# string message: the message to log alongside the stack traceback&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# False for no error, true for an error&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Created in LME 3.1.x&lt;br /&gt;
* This function is used by Neoloader internally, to capture errors during startup that would otherwise cause the game to close. For normal plugins, Assert() should be fine.&lt;br /&gt;
* A global Neoloader setting can allow err_handle to error(), if desired. The error() is only triggered after the &amp;quot;PLUGINS_LOADED&amp;quot; event is triggered.&lt;br /&gt;
* This function sends a &amp;quot;handled error&amp;quot; notification; the resulting behavior of that will depend on your active management engine&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/compare_sem_ver&amp;diff=25</id>
		<title>Vendetta/API/compare sem ver</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/compare_sem_ver&amp;diff=25"/>
		<updated>2025-03-03T06:43:08Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created compare_sem_ver&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.compare_sem_ver (version string 1, version string 2) :: number result&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Compare two version strings and determine which is higher&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string version 1: version to compare against&lt;br /&gt;
# string version 2: version being compared&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# number result: -1 if the first argument is higher, 1 if the second argument is higher. returns 0 if both arguments appear the same&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Created in LME 3.4.x&lt;br /&gt;
* Version strings are broken apart using [[vendetta/API/get_whole_ver|lib.get_whole_ver]].&lt;br /&gt;
* While the naming of the function intends for Semantic versioning to be used, as long as the versions being compared are breakable with get_whole_ver and consistant in numbering, this function should work just fine.&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/check_queue&amp;diff=24</id>
		<title>Vendetta/API/check queue</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/check_queue&amp;diff=24"/>
		<updated>2025-03-03T06:41:05Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: created check_queue&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.check_queue () -&amp;gt; nil&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Used to manually check all functions delayed by lib.require&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# None&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# nil&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 3.x.x&lt;br /&gt;
* This is used internally by Neoloader, and is called after mods get activated, so calling this manually will likely not do anything at any other time.&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/build_ini&amp;diff=23</id>
		<title>Vendetta/API/build ini</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/build_ini&amp;diff=23"/>
		<updated>2025-03-03T06:39:54Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: Created build_ini&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.build_ini(file_pointer) :: table or false&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
compiles Neoloader-relevant information from an ini file&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string file_pointer: a path/to/file string pointing to a mod&#039;s .ini registration&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
* if found and appears valid:&lt;br /&gt;
*# table file_results: a table of information on this mod&lt;br /&gt;
* if not found or formatted incorrectly:&lt;br /&gt;
*# boolean error: false&lt;br /&gt;
*# string error_id: display string concerning input error&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* Added in LME 3.x.x&lt;br /&gt;
* As long as the modreg key &amp;quot;id&amp;quot; exists and isn&#039;t &amp;quot;null&amp;quot;, the ini should be compiled with default information at minimum.&lt;br /&gt;
* The table that is built is stored locally - if the file is attempted to access again, or if another mod with the same id and version is detected, it will not compile and instead just return the already built table.&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.quasar-rce.com/index.php?title=Vendetta/API/block_trap&amp;diff=22</id>
		<title>Vendetta/API/block trap</title>
		<link rel="alternate" type="text/html" href="https://wiki.quasar-rce.com/index.php?title=Vendetta/API/block_trap&amp;diff=22"/>
		<updated>2025-03-03T06:37:01Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: Created block_trap&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Definition ===&lt;br /&gt;
lib.block_trap (id, version, run_func) :: nil&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Catches errors caused when running the given function and modifies the calling mod&#039;s state.&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
# string id: name of the mod to be activated, or the INI file&lt;br /&gt;
# string version: version of the mod to be activated, or ignored if the ID is an INI file.&lt;br /&gt;
# run_func: the function to trap errors from&lt;br /&gt;
&lt;br /&gt;
=== Returns ===&lt;br /&gt;
# nil&lt;br /&gt;
&lt;br /&gt;
=== Other notes ===&lt;br /&gt;
* This function is a ‘lazy pcall alternative’; effectively, combining pcall on the given function with lib.update_state on the calling plugin. If the pcall errors out, the owning plugin will be marked as having errored out.&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
</feed>