XmlSaveData: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 8: Line 8:
This is an unofficial MTA function, so its not included into the game by default.<br>
This is an unofficial MTA function, so its not included into the game by default.<br>
Its an exported function of the [[xmlData]] resource.<br>
Its an exported function of the [[xmlData]] resource.<br>
To access this function you need to have the resource running on your server}}
To access this function you need to have the resource running on your server.}}




This function provides an automated way of storing your data in an [[XML]] file.<br>
This function provides an automated way of storing your data in an [[XML]] file.<br>
To call this function, see the [[call]] function or the tip in the resources page: [[XmlData#Simplifying_the_export]]
To call this function, see the [[call]] function or the tip in this resources page: [[XmlData#Simplifying_the_export]]


= Syntax =
= Syntax =
Line 33: Line 33:
*'''resourceProtected:''' If set to ''true'' the script will add the sourceResource name (so the name of the resource from which it got called) to the fileName, preventing it from getting read/overwritten/deleted by any other resource. If set to ''false'' you can use this script to call/send/modify tables from different resources without the use of events/other export functions.
*'''resourceProtected:''' If set to ''true'' the script will add the sourceResource name (so the name of the resource from which it got called) to the fileName, preventing it from getting read/overwritten/deleted by any other resource. If set to ''false'' you can use this script to call/send/modify tables from different resources without the use of events/other export functions.
or
or
*'''securityLevel:''' The level of security on which you want to store your data at (list at the bottom)
*'''securityLevel:''' The level of security on which you want to store your data at. (See security levels here: [[XmlData#Security_Levels]]


===Returns===
===Returns===
Line 56: Line 56:
*'''resourceProtected:''' If set to ''true'' the script will add the sourceResource name (so the name of the resource from which it got called) to the fileName, preventing it from getting read/overwritten/deleted by any other resource. If set to ''false'' you can use this script to call/send/modify tables from different resources without the use of events/other export functions.
*'''resourceProtected:''' If set to ''true'' the script will add the sourceResource name (so the name of the resource from which it got called) to the fileName, preventing it from getting read/overwritten/deleted by any other resource. If set to ''false'' you can use this script to call/send/modify tables from different resources without the use of events/other export functions.
or
or
*'''securityLevel:''' The level of security on which you want to store your data at (list at the bottom)
*'''securityLevel:''' The level of security on which you want to store your data at. (See security levels here: [[XmlData#Security_Levels]]


===Returns===
===Returns===
Returns ''true'' if successful, ''false'' otherwise.
Returns ''true'' if successful, ''false'' otherwise.
</section>
</section>
= Security Levels =
Instead of manually adding bool parameters to the functions you can also just pass the security level you want to use for each function:
* '''0''' - No protection (any server, any resource or humans could read/modify)
* '''1''' - Very low protection (creator resource on any server or humans could read/modify)
* '''2''' - Very low protection (any resource on any server could read/modify, humans cant)
* '''3''' - Low protection (only creator resource on any server could read/modify, humans cant)
* '''4''' - Medium protection (any resource on the creator server or humans could read/modify) - DEFAULT
* '''5''' - Medium protection (only creator resource on the creator server or humans could read/modify)
* '''6''' - High protection (any resource on the creator server could read/modify, humans cant)
* '''7''' - Very high protection (only creator resource on creator server could read/modify, humans cant.

Revision as of 17:37, 11 September 2019


[[{{{image}}}|link=|]] Important Note:

This is an unofficial MTA function, so its not included into the game by default.
Its an exported function of the xmlData resource.
To access this function you need to have the resource running on your server.


This function provides an automated way of storing your data in an XML file.
To call this function, see the call function or the tip in this resources page: XmlData#Simplifying_the_export

Syntax

Click to collapse [-]
Client
bool xmlSaveData ( string fileName, table data [, bool serverProtected = true, bool encryptData = false, bool resourceProtected = false ] )
bool xmlSaveData ( string fileName, table data [, int securityLevel = 4] )

Required Arguments

  • fileName: The name of the file you want to create
  • data: The data you want to save (must be a table!)

Optional Arguments

  • serverProtected: If set to true the script will protect the file so, that can only the creator server can access it.
  • encryptData: If set to true the script will generate a random key and use it to encrypt your stored data. Note: If you want to store "sensitive data", always use encryption! (Account data should never be stored in serverside files - use a database instead!)
  • resourceProtected: If set to true the script will add the sourceResource name (so the name of the resource from which it got called) to the fileName, preventing it from getting read/overwritten/deleted by any other resource. If set to false you can use this script to call/send/modify tables from different resources without the use of events/other export functions.

or

  • securityLevel: The level of security on which you want to store your data at. (See security levels here: XmlData#Security_Levels

Returns

Returns true if successful, false otherwise.

Click to collapse [-]
Server
bool xmlSaveData ( string fileName, table data [, bool encryptData = false, bool resourceProtected = false ] )
bool xmlSaveData ( string fileName, table data [, int securityLevel = 4] )

Required Arguments

  • fileName: The name of the file you want to create
  • data: The data you want to save (must be a table!)

Optional Arguments

  • encryptData: If set to true the script will generate a random key and use it to encrypt your stored data. Note: If you want to store "sensitive data", always use encryption! (Account data should never be stored in serverside files - use a database instead!)
  • resourceProtected: If set to true the script will add the sourceResource name (so the name of the resource from which it got called) to the fileName, preventing it from getting read/overwritten/deleted by any other resource. If set to false you can use this script to call/send/modify tables from different resources without the use of events/other export functions.

or

  • securityLevel: The level of security on which you want to store your data at. (See security levels here: XmlData#Security_Levels

Returns

Returns true if successful, false otherwise.