Scoreboards
Objectives
Public Objectives
Public scoreboard objectives MUST NOT have any variable scoreholders, only real-entity scoreholders.
See the public objective naming specification.
Private Objectives
Private scoreboard objectives (with the exception of the private register) SHOULD NOT have any variable scoreholders, only real-entity scoreholders.
See the private objective naming specification.
Private Register
The private register is a special private scoreboard objective that's name matches a pack's pack ID prefixed by _ (_<pack ID>).
Private registers SHOULD hold all of a pack's variable scoreholders.
Private registers MUST NOT have any real-entity scoreholders.
Score Variables
Score variables (commonly referred to as "fake-players") are scoreholders that are not intended to represent an entity or be selectable by a selector.
Score variables SHOULD only be defined in private registers and MUST NOT be defined in any public objectives.
Score variable names MUST start with *, but otherwise have no other restrictions.
TENTATIVE:
#and$prefix are already common within the current datapack community. Current rationale for*is that it is easy to spot and does not already have a common primary meaning;#is used to start comment lines and$is used to prefix macro arguments.