Skip to content

playerdata

Justin Schwartz edited this page Jun 27, 2020 · 4 revisions

playerdata

  • ACE Directive*

Defines the per-player-data structure for the module; starts a structure block. End the block with $#endplayerdata

Inside the block, define structure fields normally.

Only one player data structure may be defined in a module, multiple playerdata directives just add extra members to the same struct.

To access per-player-data inside of a function, use the $useplayerdata() expansion function.

Valid Syntax

  • $#playerdata
  • $#playerdata type

Parameters

type

(Optional)

static or dynamic. by default, static. if player data is already defined, and this parameter is not specified, it will not change whether it is static or dynamic.

dynamic player data uses a mechanism to only allocate the full size of the struct for the player when the player is in an arena the module is attached in.

this method is especially recommended for modules with very large player data structs, because asss will limited the total number of bytes used for all per-player-data (using the undocumented global setting on load General:PerPlayerBytes, with a default of 4000) ACE avoids this problem using a wrapper struct.

Clone this wiki locally