Trusted Macro

From RPTools Wiki
Jump to navigationJump to search

Languages:  English  • 日本語

A Trusted Macro is a macro that fits certain criteria, allowing it access to functions and roll options that are protected from normal use. Moving a Trusted Macro onto a player owned-token will keep this status, so they may run it (see Managing Macros in Panels).

Functions and roll options that require a Trusted Macro will have the following note on their article:

 Note: This function can only be used in a Trusted Macro

Some parameters are only usable within a Trusted Macro, they will have the following note on their description:

 Note: This parameter can only be used in a Trusted Macro

In order for a macro to be trusted it must adhere to three requirements. If a macro is typed into the chat window, and not attached to a macro button, the only requirement is that the GM is the person who typed the macro.

First Requirement

A trusted macro must not be editable by players. Allowing players to edit trusted macros is tantamount to making all of their macros trusted. To make it so players cannot edit a macro, you must uncheck the Allow Players to Edit Macro checkbox on the Options tab of the macro window. This setting defaults to being checked, allowing players access to edit any macro. As of 1.3b54 the default can be changed in the Preferences.

View of the Macro Options tab.

Second Requirement

A trusted macro must not call another macro that is not trusted, any such call will cause the originating macro be considered an untrusted macro.

Third Requirement

After satisfying the first and second requirements, the third requirement can be satisfied in two ways:

Why trusted macros?

Using trusted macros can, for example, allow gamemasters to set up macros on library tokens that can be called by players, but edited only by GMs, and which can access functions that players would not normally be able to access. Such macros can use trusted-only options or functions (such as the [token():] roll option or the switchToken() function) to modify or read values from NPC tokens that players do not own.

A macro is trusted when ...

 * Anything the GM types into the input box is trusted
 * Anything a non GM types into the input box is not trusted.
 * Any auto execute macro that is non player editable is trusted.
 * Any auto execute macro that is player editable is not trusted.
 * Any non auto execute macro gets copied into the input box to be edited, so results in one of the first two rules

quoted Craig([1])

Let's test macros under certain combinations of macro location, player or gm, auto-execution and if it is player-editable or not. The test was performed using isTrusted() and the campaign macro was "applied to token".

Macro location clicked by auto-execute player-editable is trusted
campaign GM
campaign GM -
campaign GM -
campaign GM - -
lib:token GM -
lib:token GM -
lib:token GM -
lib:token GM - -
pc token GM -
pc token GM -
pc token GM -
pc token GM - -
campaign player • *
campaign player -
campaign player - -
campaign player - - -
pc token player -
pc token player -
pc token player - -
pc token player - - -

*: This is actually not editable by the player since its a campaign macro.

Languages:  English  • 日本語